如何检查内部类属性

时间:2012-05-19 15:02:02

标签: c# reflection

这是一些课程

public class ClassA
{
    public string Name    { get; set; }
    public string Color   { get; set; }
    public ClassB ClassB_ { get; set; }


    public class ClassB
    {
        public string Name { get; set; }
        public float  Age  { get; set; }
    }
}

现在,我想打印以控制ClassA的所有公共属性,所以我使用此

(obj是该方法获取的一些参数并打印出所有属性)

 var allProp = obj.GetType().GetProperties();

但是当我的应用程序看到ClassA的ClassB对象时 - 我想要打印出所有的ClassB属性 - 我不知道我怎么能在运行时知道ClassB是类而不是原始对象以及如何运行我可以打印出所有ClassB属性吗?

1 个答案:

答案 0 :(得分:2)

试试这段代码:

Type type = Type.GetType("ClassA+ClassB");
var allProp = type.GetProperties();

如果您需要动态名称类型,请尝试使用下一个代码:

string fullname = typeof(ClassA.ClassB).FullName;