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