1

I am trying to deploy a Script component to SSIS toolbox in the Data Flow for reuse. I'm using visual studio 2010, and SQL server 2014.

I have created the script, Signed the assembly, used Gacutil.exe /i on the DLL file to add it. It now recedes in the GAC_MSIL folder under it's strong name folder.

The above procedure is the current way I'm trying to get it to work, but I have additionally tried to use SN utility to generate a strong name and add this key back into the build. Didn't work any better than the above procedure. Is it supposed to be next to impossible to add custom components to SSIS?

In my simple mind it should be just sign, build, GAC and done.

4

1 に答える 1

2

SSIS パッケージのエディターは、使用している SQL Server のバージョンに厳密にバインドされています。

一般的な参考資料として、次のようなものがあります。

  • VS 2005 = SQL Server 2005 {90}
  • VS 2008 = SQL Server 2008 & SQL Server 2008 R2 {100}
  • VS 2010、VS 2012 = SQL Server 2012 {110}
  • VS 2013 = SQL Server 2014 {120}
  • VS 2015 = SQL Server 2016 (RTM 後) {130}

正しいバージョンの SSIS DLL を参照し、VS 2013 の SSDT-BI エディションを使用して SSIS パッケージを作成している限り、VS 2010 を使用してカスタム DLL をビルドできます。これは問題ありません。

機能させる

現在のビルドと展開のサイクルは、サーバーで行う必要があることです。これにより、SSIS は実行時にコンポーネントを見つけることができます。

ただし、開発経験が必要なため、同じ DLL を SQL Server インストールの正しいフォルダーに追加する必要もあります。SQL Server 2014 の場合、カスタムの「スクリプト コンポーネント」、またはデータ フロー内に存在するものもコピーする必要があります。

C:\Program Files\Microsoft SQL Server\120\DTS\PipelineComponents

適切に行っていれば、アイテムは VS 2010+ 用に自動的に表示されます。VS 2005/2008 では、タスクとコンポーネントをツールボックスに明示的に追加する追加の手順が必要でした。

それらが表示されていない場合は、次のいずれかです

  • SSIS フレームワークの間違ったバージョンに対して DLL をビルドしました
  • 間違ったバージョンの SSIS ツールを使用している
  • DTSSQL Server のバージョンに基づいて、GAC と正しいサブフォルダーの両方に DLL を展開していません。

泥のように透明?

于 2015-10-12T12:48:31.240 に答える