从超类访问扩展类的属性

本文关键字:属性 扩展 超类 访问 | 更新日期: 2023-09-27 18:34:10

我有以下类,我需要知道DocPage类是否在方法Render()中具有属性SessionRequired:

public class DocPageBase
{
   void Render()
   {
      // Have extended class SessionRequired?
   }
}
[SessionRequired]
public class DocPage : DocPageBase
{
   // Some properties and methods
}

感谢您的帮助!

问候

杰拉德

从超类访问扩展类的属性

您可以使用

GetType()来获取实际类型,然后Type.IsDefined检查该属性是否存在。

void Render()
{
    if (GetType().IsDefined(typeof(SessionRequiredAttribute), false)
    {
        ...
    }
}