从类中获取反射属性

时间:2017-04-04 13:34:12

标签: c#

让我们假设我们有以下TestClass

public interface IBase
{
    int MyIntegerAA { get; set; }
}

public interface F : G
{
    string MyStringBB { get; set; }
}

public interface E : F
{
    string MyStringCC { get; set; }
    IBase xyz { get; set; }
}

public interface D : E
{
    int myint1 { get; }
    int myint2 { get; }
    int myint3 { get; }
    int myint4 { get; }
}

public interface C : D
{
    string MyString1{ get; set; }
}

public class B : C
{
    public int myint1 { get; }
    public int myint2 { get; }
    public int myint3 { get; }
    public int myint4 { get; }
    public string MyString1 { get; set; }
    public IBase xyz { get; set; }
}

public class A : B
{
    public string test1 { get; set; }
}

问题是,我们如何“枚举”每个类和接口,只返回其声明的属性,而在枚举期间没有引用接口IBase。

例如 如果我试图获得B类的属性,那么我会回到以下

当前父亲是:GetProperties.Form1 + TestClass + B. 公共财产的数量:6

物业名称:xyz 属性类型:[GetProperties.Form1 + TestClass + IBase]

物业名称:myint1 物业类型:[System.Int32]

物业名称:myint2 物业类型:[System.Int32]

物业名称:myint3 物业类型:[System.Int32]

物业名称:myint4 物业类型:[System.Int32]

属性名称:MyString1 属性类型:[System.String]

有没有办法,不包括 物业名称:xyz 属性类型:[GetProperties.Form1 + TestClass + IBase]

...

0 个答案:

没有答案