【发布时间】:2011-12-21 23:03:45
【问题描述】:
我有一个这样的对象模型:
public class MyClass
{
int TheProp {get;set;}
List<Object1> TheListOfObject1 {get;set;}
List<Object2> TheListOfObject2 {get;set;}
List<Object3> TheListOfObject3 {get;set;}
List<Object4> TheListOfObject4 {get;set;}
}
现在一些嵌套对象包含一个名为 MyField 的属性,一些列表中可能包含对象,而另一些则没有。
我希望遍历每个列表,如果列表中的对象包含属性 MyField,则将该属性设置为 1。
最好的方法是什么?我可以对循环进行硬编码,并且只循环遍历我知道有我正在寻找的属性的列表,然后测试该列表的计数是否 > 0,但如果我随后添加另一个嵌套对象列表,我将拥有也重写那部分。更通用的方法是什么?
谢谢。
【问题讨论】:
-
什么是Object1、Object2、Object3?这些是不同的类别吗?不同类型的列表如何包含特定的属性?
-
@Paul:是的,它们是不同的类。有些包含用户 ID,这就是我希望添加到这些对象中的内容。
标签: c#