簡體   English   中英

將新角色添加到SiteMap

[英]Add new Role to SiteMap

在我的程序中,管理員可以選擇向數據庫添加新角色。 當然,這利用了System.Web.Security.RolesCreateRole方法:

Roles.CreateRole(newRoleName);

現在我想知道,是否可以在運行時修改我的SiteMap ,以便可以將新角色添加到給定siteMapNode中的roles列表中? 例如:

<siteMapNode title="Admin Tools" roles="Admin" description="">

如果我要在其中插入一個名為sampleRole的新角色,則siteMapNode應該如下所示:

<siteMapNode title="Admin Tools" roles="Admin,sampleRole" description="">

我后面的代碼應該如何看?

有幾個原因不更改文件(盡管可能):

  • 該文件很可能位於應用程序的應用程序目錄中。 如果更改此目錄中的文件(例如web.config),則IIS將重新啟動該應用程序,以便其他用戶可能會遇到中斷。
  • 此外,SiteMapProvider出於性能原因可能會緩存文件內容,因此不會反映您的更改。
  • 出於安全原因,應用程序池帳戶不應能夠修改Web服務器上的文件。

但是,還有一種選擇:創建一個自定義SiteMapProvider,它確定節點的角色,使其符合您的要求。 有關詳細信息,請參見此鏈接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM