質問: `IDataSource : IEnumerable`などのデータソースがあります。 1つの実装は純粋なXMLデータを照会することであり、もう1つの実装はSQLデータベースを照会することです。 私のデータソースには具体的なタイプがなく、単純なスキーマタイプに対してのみ機能しています。 一部のシナリオでは、これらのデータソースは同じランタイムコンテキストでインスタンス化され、その他のシナリオではネットワーク経由でアクセスされます。 LINQを使用してデータソースをクエリすることができなかったため、動的オブジェクトを使用して、実際のクエリの一部であるメンバー値のみを抽出して解析することを計画しています。 これは同じランタイムコンテキストで実行すると問題なく機能しますが、データソースがリモートサーバーのWebサービスの背後にある場合、私が知る方法ではWebサービスでLINQを使用できないため、これは失敗します。 そのため、LINQクエリを文字列としてフォーマットしてサーバーに送信し、それを解析して式に戻し、新しいコンテキストで実行する方法を探していました。 式を解析する2つの方法は、 動的LINQとFLEEでした。私はそれらを簡単に見てきただけですが、式を文字列にフォーマットしたり解析したりできるものはありませんでしたか? 私はRoslynプロジェクトについて読んだことがあり、それがこの問題に使用できるかもしれないと思っていましたか?誰もがそれについてもっと知っていますか? `IQueryable`もいくつか見ましたが、それについて多くの否定的なことを読んだので、おそらくそれを避けるべきです。また、強く型付けされているため、データサーバーで具体的な型を使用したくないため、ニーズに適合しません。強く型付けされているので、これがWebサービスでどのように使用されるかもわかりません。何か不足していますか?
回答: Roslynは最終的に、文字列形式のLINQ式を取得して解析し、評価する機能を提供します。ただし、現在のパブリックCTP(2011年10月にリリースされたもの)はLINQ式をサポートしていません。