一般に、データテイタルは直接使用できないと考えられていますが、これは実際にいくつかのテクニックを通じて達成できます。 DataTableはデフォルトで
インターフェイスを実装していないため、行コレクションを直接照会することはできません。
IEnumerable<T>
ソリューションは、
拡張方法を使用することです。このメソッドをDataTableで呼び出すことにより、System.Data.DataSetExtensions
オブジェクトを取得し、Linqクエリに使用できます。 AsEnumerable()
たとえば、IEnumerable<DataRow>
以下の問い合わせは、1に等しい
myDataTable
RowNo
lambda式を使用してlinqクエリを作成することもできます。
var results = from myRow in myDataTable.AsEnumerable() where myRow.Field<int>("RowNo") == 1 select myRow;
アセンブリへの参照を追加する必要があることに注意してください。
var result = myDataTable.AsEnumerable() .Where(myRow => myRow.Field<int>("RowNo") == 1);
拡張方法を使用できます。 System.Data.DataSetExtensions
以上がDatatablesでLINQクエリを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。