-1

代码:

 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. 任何想法如何做到这一点。

4

1 回答 1

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);
于 2013-11-13T19:07:53.380 回答