dt から個別の行を選択し、結果を同じ dt に戻そうとしています。これは一言で済むと思った。これが私が試していることです:
dt = (DataTable)((from row in dt.AsEnumerable() select row.Field<string>("VNDR_ID")).Distinct().ToList());
どうすればこれを達成できますか?ありがとう。
dtSuplr = (from suplr in dtSuplr.AsEnumerable()
select suplr).Distinct().CopyToDataTable();
LINQ ステートメント
(from row in dt.AsEnumerable() select row.Field<string>("VNDR_ID")).Distinct()
IEnumerable<string>
notを返すDataTable
ため、キャストは失敗します。
結果を別のものに入れる必要がある理由はありますDataTable
か? IEnumerable
クエリによって返された を使用するか、クエリをすぐに評価する場合はList<string>
withに変換します (の内容を変更できるようにするため)ToList()
dt
これを DataTable にキャストすることはできません。Linq はIEnumerable<string>
、選択に基づいて結果を出力します。これを DataTable にロードするには、次のことを行う必要があります。