2009-03-06 2 views
0

オブジェクトに、それは私をエスケープ、私の人生のためのLINQに私の頭を取得しようとすると...私はJ.LinqでJで始まるすべての製品を入手するには? PSシンプル

  Product prod; 


      for (int i = 0; i < 10;i++) { 
       prod = new Product(); 
       prod._Name = "J" + i.ToString(); 
       prod._Surname = "F" + i.ToString(); 


      } 

アップデートで_nameが始まり、すべての製品のリストを取得したいです

  Product prod; 
      List<Product> productList = new List<Product>(); 


      for (int i = 0; i < 10;i++) { 
       prod = new Product(); 
       prod._Name = "J" + i.ToString(); 
       prod._Surname = "F" + i.ToString(); 

       productList.Add(prod); 
      } 

      var query = productList.Where(p=> p._Name.StartsWith("J")); 

おかげジョン

答えて

1

は、あなたのコードサンプルでは、​​あらゆる種類のコレクションを与えられていますが、呼ばれるコレクションを持っていると仮定していないまあproductsあなたが何かしたい:

var query = products.Where(prod => prod._Name.StartsWith("J")); 

これはIEnumerable<Product>となります。あなたがList<Product>をしたい場合は、単に最後にToList()の呼び出しを追加:

var query = products.Where(prod => prod._Name.StartsWith("J")) 
        .ToList(); 
0

あなたはこのエラーを取り除きたい場合は、ジュストあなたのループでProduct proc;を移動:

for (int i = 0; i < 10;i++) { 
    Product prod = new Product(); 
    ... 
関連する問題