1
我想弄清楚如何在Razor/MVC網頁上隱藏或顯示按鈕和其他項目。ASP.Net MVC網頁 - 基於Active Directory角色的隱藏按鈕
我知道我能「保護」與授權行爲屬性,但我想基於Active Directory中的角色/組,一個用戶在一個網頁上顯示或隱藏某些按鈕。
我想弄清楚如何在Razor/MVC網頁上隱藏或顯示按鈕和其他項目。ASP.Net MVC網頁 - 基於Active Directory角色的隱藏按鈕
我知道我能「保護」與授權行爲屬性,但我想基於Active Directory中的角色/組,一個用戶在一個網頁上顯示或隱藏某些按鈕。
方式我這樣做是爲模型添加一個方法,如CanUserAccess()。
然後在視圖我不喜歡:
@if (Model.CanUserAccess(HttpContext.Current.User.Identity.Name.Split('|')[0].ToString()))
{
// display buttons or partial view containing buttons
}
然後在模型中,你可以做任何你需要做的,在CanUserAccess返回true或false。
試試這個
if (User.IsInRole("Domain\\Group"))
{
<li >
@Html.ActionLink("Only Admin", "ActionOnlyAdmin", "Admin", routeValues: new { @id = id })
</li>
}
和控制器
[Authorize(Roles = "Domain\\Group")]
public ActionResult ActionOnlyAdmin(){}
我AD的memberOf對我和看起來像測試用戶:CN =管理員,CN =用戶,DC = MYDOMAIN,DC =本地 只要使用上面的例子,我總是會得到錯誤的。 – 2014-10-03 18:45:28
我更新了答案,試一下 – 2014-10-03 19:19:02