代码:
public class ClassA
{
public decimal foo
}
public class ClassB
{
public List<ClassA> Alist
}
在ClassB中,我正在将值填充到Alist中。
foreach (junk in trash)
{
Alist.add(new ClassA()
{
foo = junk.Bar
});
// if (Alist.foo == whatever)
// but no access to Alist.foo here
}
在for each循环中,我试图对foo运行if语句。
像if (Alist.foo == whatever)
之类的东西
我不能这样做,它不允许我访问Alist.foo
。知道如何做到这一点。
答案 0 :(得分:3)
问题是您没有对刚添加的对象的引用。有很多方法可以做到这一点。我建议你只需在Add
之外构建对象。
var newA = new ClassA()
{
foo = junk.Bar
};
// now you can perform the if statement
if (newA.foo == someValue)
{
// do something
}
Alist.add(newA);