2010-12-13 4 views
1

LINQの概念が新しくなりました。私は唯一の特定の列「説明」の値を必要とする.but個別の行を取得することができ、この符号化におけるIEnumerable LINQを使用してデータテーブルから別の値をフィルタリングする必要があります

IEnumerable<DataRow> query1 = 
          (from pmh in pshTable.AsEnumerable() 
          where 
          (pmh.Field<String>("DeletedType") != "D" && pmh.Field<String>("code").ToUpper() != "XXX.XX") 
          select pmh).OrderBy(a => a.Field<String>("Description")).Distinct(); 

:私は、LINQ

サンプルコードを使用して日付テーブルに個別の値を取る方法を知っておく必要がありますはっきりしています。あなたが怒鳴るテーブルを持っている

+2

私のアプローチは、あなたのために働く場合は、答えとしてマークすることは、私の左手で答えはチックです、それをチェックしてください:) –

答えて

1

は、あなたが例えば何をしたいですか 値..私に知らせてください。

ID | Description 
---------------- 
1 | Test 
2 | Test 
3 | Sample 
4 | Sample 

あなたはあなたの特定の個別で取得したいですか?例{{1,Test},{3,Sample}} or {{1,Test},{4,Sample}}か...

ためしかし、あなたが望むものと同様に行うことGROUPBYと選択を使用することができます。

 (from pmh in pshTable.AsEnumerable() 
            where 
            (pmh.Field<String>("DeletedType") != "D" 
            && pmh.Field<String>("code").ToUpper() != "XXX.XX") 
            select pmh).OrderBy(a => a.Field<String>("Description")) 
     .GroupBy(p=>p.Field<string>("Description")) 
     .Select(p=>p.FirstOrDefault()); 
+0

とてもうまく働いています。 – raja

関連する問題