MVC路由删除参数

时间:2015-03-18 07:12:52

标签: asp.net-mvc asp.net-mvc-routing

我当前的路由配置如下:

routes.MapRoute(
   namespaces: new string[] { "ChiDesk.WebUI.Controllers" },
   name: "Default",
   url: "{controller}/{action}/{id}",
   defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

我遇到的问题是,如果我链接到以下地址:http://localhost:20220/Public/Book?id=c231e3aa-a317-4321-88ef-fe989356babc

路由似乎删除了id参数部分。所以浏览器中的地址设置为: http://localhost:20220/Public/Book

如果因为id参数未包含在任何地方而刷新页面,这显然会导致问题。

我需要更改路由以对其进行排序?

谢谢, 加里

1 个答案:

答案 0 :(得分:0)

我的错误。

在我的文档就绪功能中,我使用replaceState设置了历史记录。但是我使用的window.location.pathname属性不包含参数。

将其更改为window.location已将其排除。