ループを使用して配列を循環させ、各繰り返しでクエリwhere句の配列値を使用してLINQクエリを実行しようとしています。LINQクエリをループしてDataTableに結果を追加する
これらの結果を連続して追加し、その結果をDataTableとして返します。
どうすれば結果を追加できますか? DataTable .Merge()メソッドを試しましたが、暗黙的に型voidをDataTableに変換できません。エラーを受け取り、ジェネリック型スコープの問題のためにクエリ結果を追加する方法を理解できません。
EDIT:コード...(または私がこれまで試してみましたバージョンの少なくとも一つ)
DataTable results = new DataTable();
foreach (string toFind in searchString)
{
DataTable toMerge = new DataTable();
var searchResults = from a in dt.AsEnumerable()
where a.Field<string>("A").ToUpper().Contains(toFind.ToUpper())
select new
{
A= a.Field<Int32>("A"),
B= a.Field<string>("B"),
C= a.Field<string>("C"),
};
toMerge = ConvertDataTable.FromLINQ(searchResults.AsQueryable()); // Method I have to convert the LINQ query to a DataTable
results = results.Merge(toMerge);
}
任意のアイデア?事前に
おかげ
クリス
いくつかのコードを表示してください – Stacker
データテーブルの代わりにリストを使用できますか? – Gage