MVC 路由移除参数
MVC Routing Removes Parameters
我当前的路由配置如下:
routes.MapRoute(
namespaces: new string[] { "ChiDesk.WebUI.Controllers" },
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我 运行 遇到的问题是,如果我 link 到以下地址:http://localhost:20220/Public/Book?id=c231e3aa-a317-4321-88ef-fe989356babc
路由出现去掉id参数部分。所以浏览器中的地址设置为:
http://localhost:20220/Public/Book
如果您刷新页面,这显然会导致问题,因为 id 参数未包含在任何地方。
我需要更改什么路线才能解决这个问题?
谢谢,
加里
我的错误。
在我的文档准备功能中,我使用 replaceState
设置了历史记录。但是我使用的 window.location.pathname
属性 不包含参数。
将其更改为 window.location
解决了这个问题。
我当前的路由配置如下:
routes.MapRoute(
namespaces: new string[] { "ChiDesk.WebUI.Controllers" },
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
我 运行 遇到的问题是,如果我 link 到以下地址:http://localhost:20220/Public/Book?id=c231e3aa-a317-4321-88ef-fe989356babc
路由出现去掉id参数部分。所以浏览器中的地址设置为: http://localhost:20220/Public/Book
如果您刷新页面,这显然会导致问题,因为 id 参数未包含在任何地方。
我需要更改什么路线才能解决这个问题?
谢谢, 加里
我的错误。
在我的文档准备功能中,我使用 replaceState
设置了历史记录。但是我使用的 window.location.pathname
属性 不包含参数。
将其更改为 window.location
解决了这个问题。