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

加藤龍彦
加藤龍彦
デジタルマーケティング
CData ADO.NET ProviderとEntity Frameworkを使い、LINQクエリでFactorial のデータにアクセスする接続設定から実装までの手順を解説します。



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

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

    認証

    Factorial は認証に OAuth 2.0 を使用し、自分の HR データに接続する場合も、他のユーザーが各自のデータに接続できるようにする場合も、OAuth 2.0 認証を利用できます。

    OAuth 認証の設定

    OAuth を使って接続するには、以下のステップで進めます:

    1. Factorial の管理パネルに移動して、新しい OAuth アプリケーションを作成します。
    2. アプリケーション設定から Client ID と Client Secret をコピーします。
    3. 以下の接続プロパティを設定します。
    • AuthScheme:OAuth に設定します。
    • OAuthClientId:OAuth Client ID に設定します。
    • OAuthClientSecret:OAuth Client Secret に設定します。
    • Scope:データへのアクセス権限を指定します(デフォルト:"read write")。

    Below is a typical connection string:

    Profile=C:\profiles\Factorial.apip;AuthScheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;
  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 agreementsQuery = from agreements in context.Agreements  select agreements;
foreach (var result in agreementsQuery) {
	Console.WriteLine("{0} {1} ", result.Id, result.);
}
	

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

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

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

Factorial に接続