DbConnections の作成
DbProviderFactory およびDbConnection オブジェクトを使用して、汎用コードでBullhorn CRM に接続できます。このセクションでは、 プロジェクトから接続する方法について説明します。
コンフィギュレーションコンテキストへのプロバイダー情報の追加
厳密に型指定されたDbProviderFactory を作成するには、まずコンフィギュレーションコンテキスト(machine.config、app.config、またはweb.config)にCData ADO.NET Provider for Bullhorn CRM を登録する必要があります。本製品 インストーラは、machine.config に本製品 を登録することに注意してください。
インストーラーを使用しない場合、例えば、代わりにNuGet パッケージを使用している場合などは、本製品 を手動で登録する必要があります。 コンフィギュレーションコンテキストのSystem.Data セクションにエントリを追加することで登録が可能です。machine.config またはapp.config のSystem.Data セクションを変更できます(app config のSystem.Data は、実行時にmachine.config とマージされます)。以下はコンフィギュレーションエントリの構文とフォーマットです。
<system.data>
<DbProviderFactories>
<add name="CData ADO.NET Provider for Bullhorn CRM" invariant="System.Data.CData.BullhornCRM" description="CData ADO.NET Provider for Bullhorn CRM" type="System.Data.CData.BullhornCRM.BullhornCRMProviderFactory, System.Data.CData.BullhornCRM, Version=23.0.0.40, Culture=neutral, PublicKeyToken=f57f3fbecba6b076" />
</DbProviderFactories>
</system.data>
次のコンフィギュレーションファイルの断片は、コンテキスト内の一般的なBullhorn CRM 接続文字列を定義します。
<configuration>
<connectionStrings>
<add name="Bullhorn CRM"
providerName="System.Data.CData.BullhornCRM"
connectionString="DataCenterCode=CLS33;OAuthClientId=myoauthclientid;OAuthClientSecret=myoauthclientsecret;InitiateOAuth=GETANDREFRESH;"
/>
</connectionStrings>
</configuration>
DbProviderFactory の作成
DbProviderFactories.GetFactory を呼び出して、DbProviderFactory を作成します。
DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.CData.BullhornCRM");
DbProviderFactories はコンフィギュレーションコンテキスト内の不変の名前を参照して、アセンブリとBullhornCRMProviderFactory クラスを見つけます。
DbProviderFactory およびDbConnection の作成
次のコードは、厳密に型指定されたDbProviderFactory オブジェクトを作成し、それを使ってDbConnection オブジェクトをインスタンス化してBullhorn CRM に接続する方法を示します。
DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.CData.BullhornCRM");
using(DbConnection connection = factory.CreateConnection()) {
connection.ConnectionString = "DataCenterCode=CLS33;OAuthClientId=myoauthclientid;OAuthClientSecret=myoauthclientsecret;InitiateOAuth=GETANDREFRESH;";
connection.Open();
}
また、アプリケーションのコンフィギュレーションファイルから、接続文字列を読み取ることもできます。ConnectionStringSettingsCollection クラスには、 System.Configuration.dll への参照が必要なことに注意してください。
次のコードは、アプリケーションのコンフィギュレーションファイルで定義された最初のBullhorn CRM 接続文字列を取得します。
ConnectionStringSettingsCollection settings = ConfigurationManager.ConnectionStrings;
if (settings != null) {
foreach (ConnectionStringSettings cs in settings) {
if (cs.ProviderName == "System.Data.CData.BullhornCRM")
connection = cs.ConnectionString;
break;
}
}