你必須使用下面的代碼
Roles.CreateRole(RoleName);
Roles.AddUserToRole(UserName, RoleName);
角色名稱爲「管理員」或「用戶」或「僱員」或「客戶」或什麼都來ASIGN上登記的時間每個用戶的角色,你希望可能。 你應該在註冊時完成它。
然後你定義像這樣來區分用戶的使用。 如果您需要管理員只需要訪問下面的方法,那麼你必須將其定義爲「管理員」的角色
[HttpGet]
[Authorize(Roles = "Admin")]
public ActionResult ViewInventoryList()
{
List<Inventory> inventoryList = new List<Inventory>();
inventoryList = connectDatabase.SelectInventory();
return View("ViewInventory", inventoryList);
}
如果需要用戶只需要訪問下面的方法,那麼你必須定義角色as「User」
[HttpGet]
[Authorize(Roles = "User")]
public ActionResult ViewInventoryList()
{
List<Inventory> inventoryList = new List<Inventory>();
inventoryList = connectDatabase.SelectInventory();
return View("ViewInventory", inventoryList);
}
在MVC或任何其他使用標準身份驗證模型(來自ASP.NET)的框架中,邏輯上應該沒有多少變化。你確定你沒有受到緩存/ cookie問題的困擾嗎? – JcMaltaDev 2010-08-04 15:18:45
如果您以編程方式註銷('SignOut')當前用戶,則需要進行身份驗證的操作的下一個請求將要求用戶再次登錄。那是你要的嗎? – bzlm 2010-08-05 08:23:34