2

我正在构建一个自定义的声明性安全属性,类似于 PrincipalPermissionAttribute。在对 .net Framework 中的 Attribute 架构进行了一些研究之后,只有在调用 Type.GetCustomAttributes 时才会实例化属性。看这里, 这里

那么,如果从未实例化方法属性,那么 PrincipalPermissionAttribute 如何能够在运行时断言安全操作呢?我找不到任何关于 PrincipalPermissionAttribute 实际工作方式的文档。谢谢。

4

1 回答 1

3

CLR 实际上查找并触发从System.Security.Permissions.CodeAccessSecurityAttribute继承的属性实例的运行时执行。如果您想在不借助 AOP 扩展的情况下构建声明性安全属性,则几乎必须从此类继承。

于 2013-06-04T19:33:07.457 回答