[ASP.NET] 製作menu,會依權限限制顯示

  • 2417
  • 0

摘要:[ASP.NET] 製作menu,會依權限限制顯示

圖示  :  並且可以限定權限,讓特定使用者才會顯示aa那個menu選項

第一步:設定webconfig

  <system.web>
    <siteMap defaultProvider="AspNetXmlSiteMapProvider" enabled="true">
      <providers>
        <clear/>
        <add siteMapFile="web.sitemap" name="AspNetXmlSiteMapProvider"
             type="System.Web.XmlSiteMapProvider"
              securityTrimmingEnabled="true" />
      </providers>
    </siteMap>
  </system.web>

 

第二部 :

到masterpage 加入menu控制項,然後拉一個SiteMapDataSource 作關聯

重點: 設定Orientation = "Horizontal" ,  StaticDisplayLevel="2"

如此就可以水平呈現

 

第三部 :

設定Web.Sitemap

ex.

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
    <siteMapNode url="~/Default.aspx" title="Home"  description="Home" roles="*">
        <siteMapNode url="~/At.aspx" title="aa"  description="" roles="管理者" />
        <siteMapNode url="~/C.aspx" title="bb"  description=" roles="管理者,一般使用者"/>
      <siteMapNode url="~/E.aspx" title="cc"  description="" roles="管理者,一般使用者"/>
    </siteMapNode>
</siteMap>

收工~

註: roles 權限管理者要事先去做表單驗證等設定~~