asp.net-mvc-3 – 基于角色的模型列表授权
我有3个型号[用户,角色和用户角色]
Use {ID [PK],Name,Email,Password,.....} Role {ID [PK],Description,.......} UserRole {UserID [FK],RoleID [FK]} 考虑使用[Authorize]属性在控制器上进行基于角色的授权,指定用户必须具有管理员角色才能访问类中的任何控制器操作 [Authorize(Roles = "Administrator")] public class PageController : Controller { // Controller code here } 这很好,我需要的是, 有没有办法将我的角色集合分配给[授权]属性?例如 我将从登录用户中获取已分配的角色并将其存储在列表中.是否可以将此列表分配给[授权]属性?如下所示: [Authorize(Roles = MyDynamicallyLoadedList)] public class PageController : Controller { // Controller code here } 解决方法
好吧,有两个问题.
首先,您不能将List用作Attribute的参数.您可以使用数组. 其次,必须在编译时知道属性参数的值:列表的内容仅在运行时才知道. 你会得到一条消息:
解决方案是创建一个新的Authorization属性(继承自AuthorizeAttribute),并覆盖AuthorizedCore 一个例子(你可以适应你的问题)可以找到here (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ASP.NET本地化
- asp.net-mvc – Razor视图引擎.cshtml页面中的OutputCache
- asp.net – 谷歌浏览器在浏览器关闭后保留会话变量
- asp.net-mvc – WebApiConfig.cs和RouteConfig.cs之间的区别
- 页面存在时的404 – IIS 5,ASP.NET 4.0
- asp.net 下载文件时根据MIME类型自动判断保存文件的扩展名
- asp.net – 更新面板不更新内容
- asp.net – C#中的嵌套中继器
- asp.net-mvc – 如何在ASP.NET MVC部分视图中使用匿名列表作
- asp.net-mvc-3 – 在mvc的下拉列表中使用外键
- asp.net-mvc-4 – 会话到期后重定向到特定页面(M
- asp.net-mvc – MVC5基于声明的身份验证 – 适用
- .net core使用NLog日志
- asp.net-mvc-5 – OWIN是否调用MVC(ASP.NET MVC)
- asp.net-mvc – site.css不适用于我的示例网站
- 使用asp.net发表评论到Facebook墙
- asp.net-mvc-3 – .NET MVC 3自定义十进制?模型
- 如何在ASP.NET MVC中使用flot和jQuery?
- asp.net-mvc – 如何使用asp.net mvc razor在视图
- asp.net – 在Web.config中读取和编辑配置