web-dev-qa-db-ja.com

LINQを使用したDataColumnCollectionのクエリ

DataTableのColumnsプロパティに対して単純なLINQクエリを実行しようとしています。

from c in myDataTable.Columns.AsQueryable()
    select c.ColumnName

しかし、私が得るのはこれです:

ソースタイプ 'System.Linq.IQueryable'のクエリパターンの実装が見つかりませんでした。 「選択」が見つかりません。範囲変数「c」のタイプを明示的に指定することを検討してください。

DataColumnCollectionでLINQを使用してNiceを再生するにはどうすればよいですか?

66
David Brown

どうですか:

var x = from c in dt.Columns.Cast<DataColumn>()
        select c.ColumnName;
110
Dave Markle

あなたも使うことができます:

var x = from DataColumn c in myDataTable.Columns
        select c.ColumnName

Enumerable.Cast<TResult> Method MSDNの記事。

12
Cobra

Linqメソッドの構文:

var x = myDataTable.Columns.Cast<DataColumn>().Select(c => c.ColumnName);
6
MarkusE