以下の表に基づいて、Linqを使用してTest ID 1a
に関連付けられたすべてのデバイス名を取得し、リストに格納します。テストIDが複数回リストされることが常にわかっているとは限りません。C#Linqは列Aが一致する場合は列Bから値を取得します
Test ID DeviceName
1a dev1
1b dev2
1a dev2
1c dev1
以下の表に基づいて、Linqを使用してTest ID 1a
に関連付けられたすべてのデバイス名を取得し、リストに格納します。テストIDが複数回リストされることが常にわかっているとは限りません。C#Linqは列Aが一致する場合は列Bから値を取得します
Test ID DeviceName
1a dev1
1b dev2
1a dev2
1c dev1
あなたがしたいすべてが列Bのすべての値を読まれる場合は、次のクエリはあなたが必要とする必要があるすべてである:
string testID;
// set testID from somewhere (user input, config file, another query etc.)
var results = dataTable.Where(t => t.Id == testID).Select(t => t.DeviceName).ToList();
results
はタイプList<string>
のものであろう。
あなたの質問は本当に明確ではありません。あなたは 'TestId'と' DeviceName'についての例を尋ねますが、他の多くのフィールドでコードを表示します。あなたは何をしたいのかをもっとよく説明できますか? –
概念はかなり明確です...複数のテストIDを持つテーブルがあり、テストIDによって関連付けられたすべてのホスト名を収集する必要があります。コードとサンプルテーブルが同じであるかどうかで違いはありません – Chris
なぜ2つのフィールドでグループ化し、DataTableにローを追加するのですか?少し混乱します。グループ化して値を連結する方法については答えることができますが、残りのコードでは、私の質問への回答に基づいて –