5

Microsoft.SqlServer.Management.IntegrationServices名前空間のオブジェクトを介して、SSIS カタログ (プロジェクト配置モデル) に格納されている SSIS パッケージを検証してから実行したいと思います。PackageInfoクラスからValidateメソッドを実行すると、検証のみが実行されますが、最後まで待機しません。ある例では、作成者が「ファイア アンド フォーゲット」モードで検証を実行していることに気付きました。別の 1 つの実行では、事前の検証なしで実行されます。

  1. すべての実行前にパッケージを検証する必要がありますか?
  2. もしそうなら、同期モードでそれを行う方法は?
  3. ValidationOperation Status プロパティにも興味があります。それはラップされたcatalog.validations status列であり、特に値を持つことができますsucceeded (7)-completed (9)それらの違いは何ですか?
4

1 に答える 1

2

広告 2: ループで検証結果を待つことができました:

var validationId = package.Validate(false, PackageInfo.ReferenceUsage.UseAllReferences, null);
ValidationOperation validation = package.Parent.Parent.Parent.Validations[validationId];
do
{
    Thread.Sleep(1000);
    validation.Refresh();
}
while (!validation.Completed);
于 2012-08-29T14:12:02.007 に答える