asp.net 怎么动态修改Web.sitemap
web.config中
-
XML code
-
<siteMap defaultProvider="GuestSite" enabled="true"> <providers> <add name="CustomerSite" type="System.Web.XmlSiteMapProvider" siteMapFile="~/App_Data/Customer.sitemap"/> <add name="ManagerSite" type="System.Web.XmlSiteMapProvider" siteMapFile="~/App_Data/Manager.sitemap"/> <add name="GuestSite" type="System.Web.XmlSiteMapProvider" siteMapFile="~/App_Data/Guest.sitemap"/> </providers> </siteMap>
后台绑定:
-
C# code
-
MembershipUser user = Membership.GetUser(); if (user != null) { if (Roles.IsUserInRole(user.UserName, "Customer")) { SiteMapPath1.SiteMapProvider = "CustomerSite"; SiteMapDataSource1.SiteMapProvider = "CustomerSite"; } else if (Roles.IsUserInRole(user.UserName, "Manager")) { SiteMapPath1.SiteMapProvider = "ManagerSite"; SiteMapDataSource1.SiteMapProvider = "ManagerSite"; } } else { SiteMapPath1.SiteMapProvider = "GuestSite"; SiteMapDataSource1.SiteMapProvider = "GuestSite"; } }