2009-10-14 5 views

答えて

11

linqプロバイダは、特定のデータストア用にIQueryProviderおよびIQueryableインターフェイスを実装するソフトウェアです。つまり、そのデータストアに対してLinqクエリを書くことができます。たとえば、Linq to XMLプロバイダを使用すると、XMLドキュメントに対してLinqクエリを記述することができます。

は、それが簡単ではありませんが、あなたはまた、あなた自身のLINQプロバイダを書くことができますhttp://dotnetslackers.com/articles/csharp/LINQProviderBasics.aspx

を参照してください。詳細については、Building an Iqueryable ProviderおよびWalkthrough: Creating an IQueryable LINQ Providerを参照してください。

+0

私はIQueryableの実装がかなり限定された定義だと思います。適切なSelectメソッドを定義する* anything *に対してLINQクエリ式を使用できます(コンパイル時のダック入力のためにインターフェイスを実装する必要さえない)またはクエリ式の一部である他のメソッド(Where、Join、 GroupJoinなど)。 – JulianR

3

「LINQ(統合言語クエリ)データ ストアおよび言語環境間の中間層として 作品。 開発者の観点からは、それ は、複数のデータから データを照会するためだけの新しいパターンです構造IDEで直接 。舞台裏 それは データをフェッチまたはSQL Serverで実行するクエリを構築するために右のルーチンを呼び出し 表現処理、検証、および などのタスクの全体の多くを行います。短い、LINQスタンドでas 共通クエリg 言語とデータストアのあいだにあります。はLINQプロバイダ http://dotnetslackers.com/articles/csharp/LINQProviderBasics.aspx

特定のデータ・ストアの特定のゲートウェイ(例えば、XMLファイル、SQL RDMBS)と呼ばれています。これは、IQueryableインターフェイスを実装することによって実現されます。

Matt Warenは、cusotm linqプロバイダーの実装に関して素晴らしいtutorialシリーズを持っています。

+0

LINQ **プロバイダ**とは何ですか、質問はありませんでしたか? –

関連する問題