LINQPad でREST データを操作

詳細情報をご希望ですか?

無償トライアル:

ダウンロードへ

製品の詳細情報へ:

REST ADO.NET Provider

REST Web サービス連携のパワフルな.NET アプリケーションを素早く作成して配布。



LINQPad でREST にLINQ クエリを実行します。



CData ADO.NET Provider for REST は、LINQ やEntity Framework などの標準のADO.NET インターフェースを使ってREST を操作可能にします。この記事では、LINQPad から接続してLINQ クエリを実行する方法を説明します。

データモデルの作成

本製品およびLINQPad をダウンロードおよびインストールしたら、Visual Studio で新しいクラスライブラリプロジェクトを作成します。

本製品を使用するためのEF 6を設定する方法については、ヘルプドキュメントを参照してください。

  1. プロジェクトを右クリックし、[追加]→[新しい項目]→[ADO.NET Entity Data Model]をクリックします。ダイアログが表示されたら、データベースから[Code First]を選択します。 [New Connection]をクリックして、表示されたウィザードで接続文字列オプションを指定します。

    データソースへの認証については、データプロバイダーのヘルプドキュメントの「はじめに」を参照してください: データプロバイダーはREST API を双方向データベーステーブルとして、XML/JSON ファイル(ローカルファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)を読み取り専用のビューとしてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。認証についての詳細は、ヘルプドキュメントの「はじめに」を参照してください。

    URI を設定し、認証値を指定したら、Format を"XML" または"JSON" に設定して、データ表現をデータ構造により厳密に一致させるようにDataModel を設定します。

    DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、以下の基本的な設定を切り替えます。

    • Document (デフォルト):REST データのトップレベルのドキュメントビューをモデル化します。データプロバイダーはネストされたエレメントをデータの集計として返します。
    • FlattenedDocuments:ネストされたドキュメントとその親を単一テーブルとして暗黙的に結合します。
    • Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれます。

    リレーショナル表現の構成について詳しくは、「REST データのモデル化」を参照してください。次の例で使用されているサンプルデータもあります。データには、人、所有している車、およびそれらの車で行われたさまざまなメンテナンスサービスのエントリが含まれています。The data includes entries for people, the cars they own, and various maintenance services performed on those cars.

    一般的な接続文字列は次のとおりです。

    DataModel=Relational;URI=C:/people.xml;Format=XML;
  2. 希望するテーブルおよびビューを選択して[Finish]をクリックし、データモデルを作成します。

  3. プロジェクトをビルドします。生成されたファイルを使ってLINQPad でREST 接続を作成できます。

LINQPad でREST データに接続

必要な接続プロパティを取得してデータモデルアセンブリを作成したら、以下の手順に従ってLINQPad でデータモデルを使いはじめましょう。

  1. LINQPad を開き[接続の追加]をクリックします。

  2. [Use a typed data context from your own assembly]オプションを選択します。

  3. [Entity Framework DbContext]を選択します。

  4. [Path to Custom Assembly]ボックスの横にある[参照]をクリックして、プロジェクトフォルダを参照します。bin フォルダの下の.dll または.exe を参照します。

  5. DbContext の名前を選択します。
  6. 接続文字列をApp.Config に保存した場合は、App.Config へのパスを指定します。

これでLINQPad 経由でREST にクエリできます。サポートされたLINQ クエリの例は、ヘルプドキュメントの「LINQ およびEntity Framework」を参照してください。