C# 什么时候评估方法属性?
什么时候将对C# 什么时候评估方法属性?,c#,.net,attributes,clr,C#,.net,Attributes,Clr,什么时候将对CustomMethodAttribute进行求值,并且在进行此求值时,您可以做任何更改吗?另外,请详细解释编译器是如何管理此技巧的 何时对CustomMethodAttribute进行求值?在进行此求值时,您是否可以做任何更改 一般来说,没有进行评估。自定义属性作为元数据添加到方法中,并可根据需要在运行时通过反射进行检查 有关详细信息,请参见。那么,如何使用属性来完成类似于PrincipalPermissionAttribute的任务?@elucid8在这种情况下,Principa
CustomMethodAttribute
进行求值,并且在进行此求值时,您可以做任何更改吗?另外,请详细解释编译器是如何管理此技巧的
何时对CustomMethodAttribute进行求值?在进行此求值时,您是否可以做任何更改
一般来说,没有进行评估。自定义属性作为元数据添加到方法中,并可根据需要在运行时通过反射进行检查
有关详细信息,请参见。那么,如何使用属性来完成类似于PrincipalPermissionAttribute的任务?@elucid8在这种情况下,
PrincipalPermission
类在运行时检查元数据(该属性)。请参阅:PrinciplePermission
类如何拦截方法调用,以防止基于PrinciplePermission属性的存在访问方法体?这是CLR中内置的功能,还是我可以使用自定义属性执行类似的操作?一般来说,属性只是数据的容器。其他东西通常会检测属性的存在并相应地采取行动。在PrinciplePermission
的情况下,它是CLR中的某些内容。
[CustomMethodAttribute]
public void MyMethod(string[] args)
{
// Some implementation
}