LINQ

2017-05-15 9 views
1

との句は、これがキー=練習生とaub_key_name = BM
が、私はコードの下にしようとしている私はsub_key_valueを取得しようとしていますClick to see picLINQ

私の表です2つの条件でデータテーブルからセルの値を取得します

var query = from r in dt.AsEnumerable() 
         where r.Field<string>("Key") == "Trainee" 
         where r.Field<string>("Sub_Key_Value") == "BM" 
         select r; 

ここで、dtはこの表であり、「列挙によって結果が得られませんでした」と表示されます。 ここで複数の条件でのDataTableからセルの値を取得する方法、 は、私はあなたが間違った列をキシにしている。この

+0

、 'Sub_Key_Name'なく' Sub_Key_Valueであるべき'。 – Magnus

+0

@Magnus私はまだそのビットを変更しました "Enumeration結果が出ていません" –

答えて

1

を達成することが可能な、他の方法を知っていただきたいと思います。コードは次のようになります。

var query = from r in dt.AsEnumerable() 
        where r.Field<string>("Key") == "Trainee" 
        where r.Field<string>("Sub_Key_Name") == "BM" 
        select r; 

あなただけあなたが試しているSub_Key_Valueが必要な場合:あなたは間違っている列を照会しているデータテーブルを見てから

var query = from r in dt.AsEnumerable() 
        where r.Field<string>("Key") == "Trainee" 
        where r.Field<string>("Sub_Key_Name") == "BM" 
        select r.Field<string>("Sub_Key_Value"); 
+0

Plus 1 from me ..... –

+0

「Enumerationによって結果が得られません」と表示されます –

+0

ここにこのエラーが表示されますか、結果を列挙していますか? データテーブルが有効範囲外であるか、処分されている可能性はありますか? – Scrobi

0
var query = from r in dt.AsEnumerable() 
        where r.Field<string>("Key") == "Trainee" 
        && r.Field<string>("Sub_Key_Value") == "BM" 
        select r; 
+1

説明もいいですね。私は解決策を知っていますが、同様の問題を抱えているOPや将来の訪問者にとってはあまり明らかではないかもしれません。 – Flater

+0

まだ "列挙で結果が得られていません" –

+0

答えはうまくいくはずですが、なぜ結果が表示されないのかわかりませんが、これは私にとってはうまくいきますdt.AsEnumerable()。x => x.Field ( "key")== " (z => z.Field ( "Sub_Key_Value"));を選択します(例:z.Field ( "Sub_Key_Name")== "BM")。 –