カスタム接続マネージャーの作成
適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム
カスタム接続マネージャーを作成するために必要な手順は、Integration Services の他のカスタム オブジェクトの作成手順と同様です。
基本クラスを継承する新しいクラスを作成します。 接続マネージャー用の基本クラスは ConnectionManagerBase です。
クラスに、オブジェクトの種類を識別する属性を適用します。 接続マネージャー用の属性は DtsConnectionAttribute です。
基本クラスのメソッドとプロパティの実装をオーバーライドします。 接続マネージャーでは、ConnectionString プロパティ、AcquireConnection メソッド、および ReleaseConnection メソッドが対象です。
必要に応じて、カスタム ユーザー インターフェイスを開発します。 その場合、接続マネージャーでは、IDtsConnectionManagerUI インターフェイスを実装するクラスが必要です。
Note
Integration Services に組み込まれているタスク、変換元、および変換先の多くは、組み込みの接続マネージャーの特定の種類でのみ機能します。 そのため、これらのサンプルは組み込みのタスクおよびコンポーネントではテストできません。
カスタム接続マネージャーの概要
プロジェクトおよびクラスの作成
すべてのマネージド接続マネージャーは ConnectionManagerBase 基本クラスから派生するため、カスタム接続マネージャーを作成するには、最初に任意のマネージド プログラミング言語でクラス ライブラリ プロジェクトを作成してから、基本クラスを継承するクラスを作成します。 この派生クラスで、基本クラスのメソッドとプロパティをオーバーライドして、カスタム機能を実装します。
同じソリューション内に、もう 1 つのクラス ライブラリ プロジェクトをカスタム ユーザー インターフェイス用に作成します。 配置を容易にするため、ユーザー インターフェイス用に別個のアセンブリを使用することをお勧めします。そうすれば、接続マネージャーやそのユーザー インターフェイスの更新や再配置を個別に行うことができます。
どちらのプロジェクトも、アセンブリに署名するよう構成します。アセンブリは、厳密な名前のキー ファイルを使用して、ビルド時に生成されます。
DtsConnection 属性の適用
作成したクラスに DtsConnectionAttribute 属性を適用して、そのクラスが接続マネージャーとして識別されるようにします。 この属性には、接続マネージャーの名前、説明、および接続の種類など、デザイン時の情報を指定します。 ConnectionType プロパティと Description プロパティは、[SSIS 接続マネージャーの追加] ダイアログ ボックスに表示される [種類] 列と [説明] 列に対応します。このダイアログ ボックスは、SQL Server Data Tools (SSDT) でパッケージの接続を構成するときに表示されます。
UITypeName プロパティを使用して、接続マネージャーをそのカスタム ユーザー インターフェイスにリンクします。 このプロパティに必要な公開キー トークンを取得するには、sn.exe -t を使用して、ユーザー インターフェイス アセンブリへの署名に使用するキー ペア (.snk) ファイルから公開キー トークンを表示します。
<DtsConnection(ConnectionType:="SQLVB", _
DisplayName:="SqlConnectionManager (VB)", _
Description:="Connection manager for Sql Server", _
UITypeName:="SqlConnMgrUIVB.SqlConnMgrUIVB,SqlConnMgrUIVB,Version=1.0.0.0,Culture=neutral,PublicKeyToken=<insert public key token here>")> _
Public Class SqlConnMgrVB
Inherits ConnectionManagerBase
. . .
End Class
[DtsConnection(ConnectionType = "SQLCS",
DisplayName = "SqlConnectionManager (CS)",
Description = "Connection manager for Sql Server",
UITypeName = "SqlConnMgrUICS.SqlConnMgrUICS,SqlConnMgrUICS,Version=1.0.0.0,Culture=neutral,PublicKeyToken=<insert public key token here>")]
public class SqlConnMgrCS :
ConnectionManagerBase
{
. . .
}
カスタム接続マネージャーのビルド、配置、およびデバッグ
Integration Services のカスタム接続マネージャーをビルド、配置、およびデバッグする手順は、他の種類のカスタム オブジェクトの手順と同様です。 詳細については、「カスタム オブジェクトのビルド、配置、デバッグ」を参照してください。