2009-07-31 30 views

Trả lời

22
if (User.IsInRole("rolename")) { 
    // my action 
} 
+0

không gian tên nào là người dùng? – leora

+3

Người dùng là thuộc tính của lớp Trang và lớp HttpContext, vì vậy bạn có thể truy cập nó trên trang đơn giản là Người dùng hoặc trong tệp không phải trang là HttpContext.Current.User. Thông tin thêm tại MSDN: http://msdn.microsoft.com/en-us/library/system.web.httpcontext.user.aspx –

2

Kiểm tra các lớp Roles, cụ thể IsUserInRole, GetUsersInRole, AddUserToRole vv

tôi sử dụng những tất cả các thời gian.

8

Dễ ~

HttpContext.Current.User.IsInRole("roleName") 
+0

mã này sẽ xem xét cơ sở dữ liệu sql (đó là nhà cung cấp của tôi) để xác định vai trò trong asp. mạng lưới? – leora

+1

Có, nó sẽ xem xét bất kỳ nhà cung cấp nào bạn đã định cấu hình. –

+0

Gotta yêu các nhà cung cấp :) – BigBlondeViking

2

nhờ "Chris Van Opstal". tôi đã giải quyết được sự cố của mình theo cách này,

public ActionResult Index() 
    { 

     if (User.IsInRole("Supervisor")) 
     { 
      return RedirectToAction("Index", "InvitationS"); 
     } 
     return View(); 
    } 
Các vấn đề liên quan