|
0
|
| Chris Barry · 技术社区 · 15 年前 |
|
|
1
1
只要使用将用户对象放在上下文中的标准身份验证方法,就不会太难。在您的视图中,使用Html.RenderPartial和适当的控制器来完成您想要的。。。
/主页/管理视图:
/共享/空视图:
/主控制器:
编辑: 只是想到别的。。。如果您的用户对象实现了IPrincipal,您可以从上下文中提取它,将其转换为您的用户类型,并在用户类中拥有信息权限。。。 有点像这样
管理视图逻辑可能如下所示:
|
|
|
2
1
见 this 问题。 这解决了只允许特定用户访问特定操作/控制器的问题。
当然,如果将用户的标志存储在单独的表中,则可以根据自己的数据执行所有这些操作。编写您自己的授权属性(即授权过滤器),并使用您自己的数据来驱动视图—将其作为视图数据的一部分传递给视图—就像模型的任何其他部分一样。 你说你不想编写代码来将数据通过控制器传递给视图-但是这是控制器的原因-这就是它们存在的原因。您可以编写一个静态方法或某种类型的服务,绕过控制器,直接从视图访问数据库,但是您也可以回到webforms。 |