MVC站点地​​图提供程序 - 维护痕迹路径中的URL参数

Ben*_*Ben 8 sitemap breadcrumbs sitemapprovider asp.net-mvc-3

我正在使用http://mvcsitemap.codeplex.com/中的MvcSiteMapProvider 为我的项目创建面包屑跟踪.我有一些URL需要传递给相应用户的信息,例如http:// localhost:52306/Home/User?ID = 101101

当我进一步导航到站点地图(例如http:// localhost:52306/Home/User/Details?ID = 101101)并尝试使用痕迹导航链接将我带回"用户"页面时,ID参数将丢失.我尝试将SiteMapPreserveRouteData属性添加到操作方法,但它们似乎没有做任何事情.是否有一种简单的方法可以确保保留此ID信息?我认为SiteMapPreserveRouteDataAttribute应该这样做,所以我的属性有问题吗?我的方法看起来像这样:

[SiteMapPreserveRouteData]
public ActionResult User()
{
  //code
}
Run Code Online (Sandbox Code Playgroud)

如果您需要我的更多信息,请告诉我.

Rya*_*son 0

根据 MVCSiteMapperProvider 上的此线程,您不能使用查询字符串。它忽略查询字符串并仅使用路由数据。

查询字符串和 MVCiteMapper

您是否考虑过创建一些新路线而不是使用查询字符串?