为了在我的网站上使用面包屑。我已经安装了MvcSiteMapProvider.MVC5包。我的应用程序有两个区域-合作伙伴和客户:

我的网站地图

它不接受第二个站点地图节点。它将如何管理,以及我们如何在各个领域实现它。?。任何帮助都是值得欣赏的。
显示模板安装在~/Views/Shared/DisplayTemplates位置。

发布于 2017-01-28 17:26:39
<mvcSiteMap>只允许一个<mvcSiteMapNode>子级。
您可以使用您的主控制器和操作作为breadcrumb中的第一个元素,然后为您的区域添加sitemap节点。
<?xml version="1.0" encoding="utf-8" ?>
<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">
<mvcSiteMapNode title="Partner" controller="Dashboard" action="Index" area="Partner">
...
</mvcSiteMapNode>
<mvcSiteMapNode title="Customer" controller="Dashboard" action="Index" area="Customer">
...
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>发布于 2017-01-28 18:27:27
@Edin是正确的。你只能有一个根SiteMap节点,就像一个网站你只能有一个主页一样。您的区域应该嵌套在表示主页的节点内。
如果不希望主页节点出现在面包屑中,可以使用visibility provider将其隐藏。
<?xml version="1.0" encoding="utf-8" ?>
<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"
visibility="!SiteMapPathHelper"
visibilityProvider="MvcSiteMapProvider.FilteredSiteMapNodeVisibilityProvider, MvcSiteMapProvider">
<mvcSiteMapNode title="Partner" controller="Dashboard" action="Index" area="Partner">
...
</mvcSiteMapNode>
<mvcSiteMapNode title="Customer" controller="Dashboard" action="Index" area="Customer">
...
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>https://stackoverflow.com/questions/41906941
复制相似问题