Tôi có ứng dụng ASP.NET MVC 5. Tôi đang sử dụng nhà cung cấp tiêu chuẩn ASP.NET Identity để quản lý vai trò và người dùng. Điều quan trọng là tôi đang sử dụng IdentityUser từ một dự án kho lưu trữ riêng, nhưng điều này có vẻ ổn. Tôi có thể đăng ký, đăng nhập, chỉnh sửa người dùng và quản lý vai trò của họ.Vai trò người dùng kiểm tra nhận dạng ASP.NET không hoạt động
tôi thêm người sử dụng vai trò với những dòng này:
UserManager.AddToRole(userdetail.Id, r);
db.Entry(userdetail).State = EntityState.Modified;
db.SaveChanges();
này dường như làm việc ở mức DB.
Nhưng, tôi không thể sử dụng xác thực dựa Vai trò, thực sự là simples
HttpContext.User.IsInRole("Administrator")
không làm việc quá.
[Authorize(Roles="Administrator")]
cũng không hoạt động.
tôi có thể kiểm tra chỉ với phương pháp này, cho dù người sử dụng là một quản trị viên:
UserManager.IsInRole(userID, "Administrator").
Tại sao?
Trong mọi hướng dẫn tôi tìm thấy, mọi thứ đều hoạt động tốt. Kho dự án khác nhau có thể là lý do? Hoặc ASP.NET Identity bị hỏng rất nhiều?
Vui lòng tư vấn,
Tôi gặp vấn đề tương tự. Bất kì giải pháp nào? – janhartmann
Câu trả lời đã được đăng. Chấp nhận nó. Cái của jd4u. – DtechNet