LINQ を使ってGong のデータに連携する方法

加藤龍彦
加藤龍彦
デジタルマーケティング
LINQ は.NET Framework 3.0以上でデータクエリ用のインターフェースを提供し、CData Data Providers for ADO.NET からプログラムでデータにアクセスする簡単な方法を提供します。この記事では、LINQ を使ってGong Data Provider から情報にアクセスします。



この記事では、CData ADO.NET Data Provider for API 経由でLINQ を使ってGong テーブルにアクセスする方法を説明します。これを行うには、Entity Framework にLINQ を使います。これにより接続を作成し、あらゆる CData ADO.NET Data Providers からLINQ を使ってデータにアクセスできるようになります。

  1. Visual Studio の新規プロジェクトで、プロジェクトを右クリックし[新しい項目の追加]を選択します。[ADO.NET Entity Data Model]を追加します。
  2. [データベースから生成]を選択し、[次へ]をクリックします。
  3. [接続の追加]をクリックし、データソースタイプを "CData Gong Data Source" に変更します。
  4. データソースの接続情報を入力します。一般的な接続プロパティは以下のとおりです:

    Gong への認証では、Gong の API Key と API Secret を使った API キー認証を利用できます。

    認証

    Gong への認証では、Gong の API Key と API Secret、およびテナントの Domain を指定する必要があります。これらの認証情報は結合され、Base64 エンコードされて、すべての API リクエストで使われる Basic 認証ヘッダーを形成します。

    API キー認証の設定

    API キーで認証するには、Gong のアカウント設定から API Key と API Secret を取得します。

    取得したら、AuthScheme を APIKey に設定し、認証情報を指定して接続します:

    • AuthScheme:APIKey に設定します。
    • APIKey:Gong の API Key に設定します。
    • APISecret:Gong の API Secret に設定します。
    • Domain:Gong のテナントドメインに設定します(例:us-36533.api.gong.io)。

    接続文字列の例

    Profile=C:\profiles\Gong.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_api_key;APISecret=your_api_secret;Domain=your-tenant.api.gong.io';
    

    Below is a typical connection string:

    Profile=C:\profiles\Gong.apip;AuthScheme=APIKey;ProfileSettings='APIKey=your_api_key;APISecret=your_api_secret;Domain=your-tenant.api.gong.io';
  5. Required connection properties for the data source. (Salesforce is shown.)
  6. エンティティ接続をApp.Config に保存する場合は、エンティティ名を設定します。この例では、APIEntities をエンティティ接続としてApp.Config に設定しています。
  7. モデル名を入力し、モデルに含めたいテーブルまたはビューを選択します。
The available tables in the underlying data source. (QuickBooks is shown.)

作成したエンティティを使って、選択、更新、削除、および挿入コマンドが実行できます。例:

APIEntities context = new APIEntities();
var answeredscorecardsQuery = from answeredscorecards in context.AnsweredScorecards  select answeredscorecards;
foreach (var result in answeredscorecardsQuery) {
	Console.WriteLine("{0} {1} ", result.Id, result.);
}
	

サポートされたLINQ のクエリ例は、ヘルプドキュメントの「LINQ およびEntity Framework」をご参照ください。

はじめる準備はできましたか?

API Driver で Gong のライブデータに接続

Gong に接続