MSDN Dynamic linq to sqlパッケージを使用しています。クエリに文字列を使用できます。
ただし、返されるタイプはIQueryable
であり、 IQueryable<T>
ありません。 ToList()
メソッドがありません。
IQueryable
を手動で列挙せずに、このすぐに実行するにはどうすればよいですか?
私の目標は、linqtosqlデータソースのSelectingイベントにデータバインドし、データコンテキスト破棄例外をスローすることです。グリッドビューでクエリをデータソースとして設定することもできます。
どんな助けも大歓迎です!ありがとう。
SQLへの動的linqは、Visual Studioに付属するサンプルの1つです。
IQueryable
とIQueryable<T>
の違いは、2番目は型付けされているが、最初は型付けされていないことです。 IQueryable
をIQueryable<T
>に変換するには、 Cast<T>()
メソッドを使用できます。
IQueryable myQueryable = ...;
IQueryable<MyType> myTypedQueryable = myQueryable.Cast<myQueryable>();
IList<MyType> myList = myTypedQueryable.ToList();
もちろん内容myQyeryable
にキャスト可能でなければなりませんMyType
。特定のタイプのインスタンスを選択するには、キャストを行う前にTypeOf<T>()
メソッドを使用できます。