C#反射获取属性的名称

abstract class AbstractGetValue

 {

  public object GetValue(string propertyName)

  {

   return this.GetType().GetProperty(propertyName).GetValue(this, null);

  }

 }

 class Person : AbstractGetValue

 {

  public string Name

  { get; set; }

 

  public int Age

  { get; set; }

 }

 class Demo : AbstractGetValue

 {

  public string Str

  { get; set; }

  public int I

  { get; set; }

 }

}

以上为对象类

System.Reflection.PropertyInfo[] propertys =对像.GetType().GetProperties();
                foreach (System.Reflection.PropertyInfo info in propertys)
                {
                   //info.Name 属性名称

//info.GetValue(info.Name);//即可获取属性的值。可用字典存储。

                }

你可能感兴趣的:(C#)