我尝试使用MvcSiteMapProvider作为面包屑。
我有以下sitemap文件:
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0"
xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0 MvcSiteMapSchema.xsd">
<mvcSiteMapNode title="Home" controller="Home" action="Index" key="Index">
<mvcSiteMapNode title="About" controller="Home" action="About"/>
<mvcSiteMapNode title="Company List" controller="Company" action="Index" key="Company">
<mvcSiteMapNode title="Create company" controller="Company" action="Create" />
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>并显示出来:
@Html.MvcSiteMap().SiteMapPath()它适用于“创建公司”、“公司列表”等页面
然后我想把它添加到带参数的action中:
[MvcSiteMapNode(Title = "Company Details", ParentKey = "Company", Key = "CompanyDetails")]
public ActionResult Details(int? id)
{
...
CompanyDetailVM model = mapper.Map<CompanyDetailVM>(company);
return View(model);
}但它不起作用,根本没有显示面包屑。哪里出错了?
发布于 2017-09-18 17:42:20
尝试将id路由参数添加到站点地图节点:
[MvcSiteMapNode(Title = "Company Details", ParentKey = "Company", Key = "CompanyDetails", PreservedRouteParameters = "id")]
public ActionResult Details(int? id)
{
...
}https://stackoverflow.com/questions/45462801
复制相似问题