首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >类型基类中的GetField const

类型基类中的GetField const
EN

Stack Overflow用户
提问于 2014-02-17 20:27:26
回答 1查看 311关注 0票数 0

如何使用.NET 4中的反射从派生类获取基类的字段信息?

例如,

代码语言:javascript
复制
class Parent
{
    public const bool ParentField = true;
}

class Child : Parent
{
    public const bool ChildField = true;
}

使用这些类:

代码语言:javascript
复制
Console.WriteLine(p.GetType().GetField("ParentField"));
Console.WriteLine(c.GetType().GetField("ChildField"));
Console.WriteLine(c.GetType().GetField("ParentField"));

第三行不像我预期的那样工作。当从基类型获取字段时,GetField返回null。我尝试过使用我能想到的所有不同的GetField值来重载BindingsFlags,但是它总是返回null。

编辑

我应该清楚这件事

代码语言:javascript
复制
c.GetType().GetField("ParentField",BindingFlags.FlattenHierarchy)

还返回null。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-17 20:40:46

要获得继承的常量,必须更具体地使用绑定标志:

代码语言:javascript
复制
c.GetType().GetField("ParentField", BindingFlags.Public | BindingFlags.Static | BindingFlags.FlattenHierarchy)
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21838660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档