Hier ist mein Problem. Ich habe ein Menü mit einem Element und zwei Untermenüpunkten definiert. Beachten Sie, dass das erste Untermenüelement dieselbe Aktionsmethode wie sein Elternelement definiert hat. Ich habe auch AuthorizeAttribute für beide Aktionen Methoden Test1, Test2 hinzugefügt.MVCSiteMapProvider - Rendering Menü Problem
Wenn der Benutzer keinen Zugriff auf die Test2-Methode hat, wird "Submenu item 2" nicht auf der Benutzeroberfläche gerendert, was in Ordnung ist. Wenn Benutzer jedoch keinen Zugriff auf Test1-Methode "Top-Menüelement" hat und seine untergeordneten Elemente nicht gerendert werden. So verschwindet das ganze Menü.
Ich möchte "Top Menüelement" gerendert werden, wenn Benutzer Zugriff auf einen Untermenüpunkt hat. Ist es mit MVBSiteMapProvider etwas machbar?
mvc.sitemap Datei
<?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" mainnav="false">
<mvcSiteMapNode title="Top menu item" controller="Test" action="Test1" >
<mvcSiteMapNode title="Submenu item 1" controller="Test" action="Test1" />
<mvcSiteMapNode title="Submenu item 2" controller="Test" action="Test2" />
</mvcSiteMapNode>
</mvcSiteMapNode>
Vielen Dank für jede Hilfe.