【发布时间】:2010-06-25 05:58:49
【问题描述】:
我正在为我的应用程序使用 .NET mvc2。我想要对我的操作进行一些自定义授权。我用谷歌搜索了一下,似乎有两种选择。
- 在自定义操作过滤器的 onActionExecuting 中实现逻辑,see this post
- 子类 authorizeattribute 或实现 Iauthorization 接口并将我的逻辑放在那里
我的问题是哪种技术更可取,以及使用每种技术的优缺点
已编辑:此外,我可以在基本控制器中覆盖 onActionExecuting 和 onAuthorization,这让我可以直接访问控制器变量。
【问题讨论】:
-
你有没有发现任何优点和缺点?现在我正在处理同样的问题。你的解决方案是什么?
-
使用 onActionExecuting 还可以让您访问私有成员。在过滤器中,您可能只能访问公共属性和方法。我使用了 AuthorizeAttribute 的子类,因为这就是它的用途,并为您提供了关注点的清晰分离
标签: .net action-filter authorize-attribute