【发布时间】:2011-02-15 07:01:56
【问题描述】:
我有以下虚拟类结构,我试图找出如何从 PeopleList 中 People 类的每个实例中获取属性。我知道如何从 People 的单个实例中获取属性,但我一生都无法弄清楚如何从 PeopleList 中获取属性。我确信这真的很简单,但有人能指出我正确的方向吗?
public class Example
{
public class People
{
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
private int _age;
public int Age
{
get { return _age; }
set { _age = value; }
}
public People()
{
}
public People(string name, int age)
{
this._name = name;
this._age = age;
}
}
public class PeopleList : List<People>
{
public static void DoStuff()
{
PeopleList newList = new PeopleList();
// Do some stuff
newList.Add(new People("Tim", 35));
}
}
}
【问题讨论】:
-
您无法从
PeopleList获取它们是什么意思?除了标准Count和Capacity之外,您的示例中没有其他属性... -
不太清楚你的意思。是否有可能从
People继承的不同类,并且您想获取这些属性,或者您只是想获取列表中项目的各种值(如果是这样,我不明白您为什么需要对此进行反思)。您能否添加一个您打算如何使用这些数据的示例(伪代码应该足够好)。 -
为什么需要重新选举?
-
抱歉,这不是一个经过深思熟虑的例子。我打算做的,这也可能是错误的,是有一个通用的方法,我将 PeopleList 传入,T 可以是 PeopleList。然后我将遍历 PeopleList 的每个实例,获取 People 的属性及其值。 T 可以是从 List
继承的任何类。我希望这会有所帮助?
标签: c# reflection properties