是否有任何理由迭代 anIEnumerable<AbstractClass>
会重置每个项目的属性?
想象一下,我有一个列表作为项目:
public abstract class MyAbstractClass{
public virtual string ID {get; set;}
}
public class MyClass : MyAbstractClass {
public string ID {get; set;}
}
public static string MyMethod (IEnumerable<MyAbstractClass> items)
{
//At this moment I can see that items are populated correctly.
foreach (MyAbstractClass item in items)
{
//at this moment each item is kind of reset and all it's properties are null
}
}
为什么会发生这样的事情?我不确定我在这里是否做错了什么。
提前致谢。
编辑 :
MyClass 的 I 可枚举列表被传递给 MyMethod。