欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#实现获取不同对象中名称相同属性的方法

程序员文章站 2022-06-14 15:43:11
本文实例讲述了c#实现获取不同对象中名称相同属性的方法。分享给大家供大家参考。具体如下: 【两个类】 class demo1 { public strin...

本文实例讲述了c#实现获取不同对象中名称相同属性的方法。分享给大家供大家参考。具体如下:

【两个类】

class demo1
{
 public string name { get; set; }
 public int age { get; set; }
}
class demo2
{
 public string name { get; set; }
 public string address { get; set; }
}

【初始化数据】

list<object> list = new list<object>();
demo1 d11 = new demo1() { age = 1, name = "我是demo1的1" };
demo1 d12 = new demo1() { age = 2, name = "我是demo1的2" };
demo2 d21 = new demo2() { name = "我是demo2的1" };
demo2 d22 = new demo2() { name = "我是demo2的2" };
list.add(d11);
list.add(d21);
list.add(d31);
list.add(d12);

【两个类都有同一个属性name,现在遍历list集合,获取出所有的name值】

foreach(object o in list)
{
  propertyinfo pi = o.gettype().getproperty("name");
  if (pi != null) {
  console.writeline(pi.getvalue(o,null).tostring());
  }
}

希望本文所述对大家的c#程序设计有所帮助。