C# - 从基类获取页面的 BaseType.Name 和命名空间

标签 c# class radix

我的所有页面都有一个基类:

//BASE CLASS
public class WebBasePage : Page
{
    protected override void OnLoad(EventArgs e)
    {
          base.OnLoad(e);
          string pageBaseTypeName = ????
          string pageBaseTypeNameMespace = ????
    }
}
//PAGE
public partial class T350112A : WebBasePage
{
    protected void Page_Load(object sender, EventArgs e)
    {
        //Some code.
    }
}

我希望这个基类的OnLoad事件能够动态获取调用该基类的Page的BaseType.Name和Namespace。

这可能吗?

最佳答案

我假设您想要获取派生类名称和命名空间,而不是基本页面名称和命名空间(因为它永远不会改变)。您只需调用 GetType 即可获取此信息:

  public override void OnLoad(EventArgs e)
  {
       Type derivedType = GetType();
       string typeName = derivedType.Name;
       string namespace = derivedType.Namespace;
  }

GetType 调用将获取正在运行类型的信息。

关于C# - 从基类获取页面的 BaseType.Name 和命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10212185/

相关文章:

c# - 获得行动目标

c - 将指针分配给指针

c++ - 错误 : type ‘class’ is not a direct base of ‘class’

c# - 检查 propertyInfo 是否实现了一个类

c# - 跳过数组中的最后一个元素并返回所有其他元素 C#

java - 如何更改不同类的字符串数组的值?

ruby - 在 Ruby 中,{1 => new "new")} 中的 ("alice"是什么意思?

r - 使用subset()删除列和直接在R中的公式中删除变量有什么区别?

c# - 在 ASP.NET WebAPI 中检索不记名 token

java - 为什么我不能在第一个条件中使用类型检查变量作为第二个条件中的类型转换变量?