LINQPad でConstantContact のデータを操作する方法
CData ADO.NET Provider for API は、LINQ やEntity Framework などの標準のADO.NET インターフェースを使ってConstantContact の操作を実現します。この記事では、LINQPad から接続してLINQ クエリを実行する方法を説明します。
必要なもの
本記事の手順を実行してLINQPad からConstantContact に接続するには、以下の3つの製品が必要になります。
- ConstantContact の環境
- LINQPad
- CData ADO.NET Provider for API。右側のサイドバーから30日間無償トライアルがダウンロードできます
データモデルの作成
CData ADO.NET Provider for API およびLINQPad をダウンロード・インストールしたら、Visual Studio で新しいクラスライブラリプロジェクトを作成します。
ADO.NET Provider の利用に必要となるEF 6を設定する方法については、ヘルプドキュメントを参照してください。
プロジェクトを右クリックし、[追加]→[新しい項目]→[ADO.NET Entity Data Model]をクリックします。ダイアログが表示されたら、データベースから[Code First]を選択します。 [New Connection]をクリックして、表示されたウィザードで接続文字列オプションを指定します。

- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用して、OAuthAccessToken を取得するプロセスを管理できます。
- OAuthClientId:アプリ設定で指定されたclient_id に設定します。
- OAuthClientSecret:アプリ設定で指定されたclient_secret に設定します。
- CallbackURL:アプリ設定で指定したRedirect URI に設定します。
希望するテーブルおよびビューを選択して[Finish]をクリックし、データモデルを作成します。

- プロジェクトをビルドします。生成されたファイルを使ってLINQPad でConstantContact 接続を作成できます。
まず、Profile 接続プロパティをディスク上のConstantContact プロファイルの場所に設定します(例:C:\profiles\ConstantContact.apip)。次に、ProfileSettings 接続プロパティをプロファイルの接続文字列に設定します(以下を参照)。
ConstantContact API プロファイル設定
ConstantContact はOAuth ベースの認証を使用します。
まず、ConstantContact でOAuth アプリケーションを登録します。ConstantContact API ガイド(https://v3.developer.constantcontact.com/api_guide/index.html)の「MyApplications」>「New Application」から登録できます。OAuth アプリケーションにはclient id(API キー)が割り当てられ、client secret(シークレット)を生成できます。
以下の接続プロパティを設定すると、接続できるようになります。
一般的な接続文字列は次のとおりです。
Profile=C:\profiles\ConstantContact.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
LINQPad でConstantContact のデータに接続
必要な接続プロパティを取得してデータモデルアセンブリを作成したら、以下の手順に従ってLINQPad でデータモデルを使いはじめましょう。
LINQPad を開き[接続の追加]をクリックします。

[Use a typed data context from your own assembly]オプションを選択します。
[Entity Framework DbContext]を選択します。
![下部のフィールドから[Entity Framework DbContext]を選択](../articles/ado-linqpad-qb-6.png)
[Path to Custom Assembly]ボックスの横にある[参照]をクリックして、プロジェクトフォルダを参照します。bin フォルダの下の.dll または.exe を参照します。
- DbContext の名前を選択します。
- 接続文字列をApp.Config に保存した場合は、App.Config へのパスを指定します。
これでLINQPad 経由でConstantContact にクエリできます。サポートされたLINQ クエリの例は、ヘルプドキュメントの「LINQ およびEntity Framework」を参照してください。