次の方法で共有


UpdatePackage プロパティ

更新バージョンが検出されたときにパッケージを更新できるかどうかを示す Boolean を取得します。値の設定も可能です。

名前空間:  Microsoft.SqlServer.Dts.Runtime
アセンブリ:  Microsoft.SqlServer.ManagedDTS (Microsoft.SqlServer.ManagedDTS.dll)

構文

'宣言
Public Property UpdatePackage As Boolean
    Get
    Set
'使用
Dim instance As Application
Dim value As Boolean

value = instance.UpdatePackage

instance.UpdatePackage = value
public bool UpdatePackage { get; set; }
public:
property bool UpdatePackage {
    bool get ();
    void set (bool value);
}
member UpdatePackage : bool with get, set
function get UpdatePackage () : boolean
function set UpdatePackage (value : boolean)

プロパティ値

型: System. . :: . .Boolean
更新バージョンが検出されたときにパッケージを更新できる場合は true です。それ以外の場合は false です。既定値は false です。

説明

タスク、Foreach 列挙子、ログ プロバイダ、および接続マネージャなどの拡張可能なオブジェクトが更新される場合、古いパッケージは読み込み時に更新できます。このような処理が行われるようにするには、読み込み前にアプリケーション オブジェクトで UpdatePackage と UpdateObjects という 2 つのプロパティを true に設定する必要があります。

また、拡張可能な各オブジェクトは CanUpdate プロパティも実装する必要があります。

ランタイムは、古いパッケージの読み込みを試み、古いオブジェクトを検出した場合は、更新を試みます。まず、(個別にローカルに扱われる Pipeline を除外して) このランタイムに含まれているすべての拡張可能なオブジェクトを列挙します。次に、オブジェクトごとに、新しいオブジェクトで古いオブジェクトの ID を渡しながら CanUpdate を呼び出します。新しいオブジェクトが古いオブジェクトを更新できる場合、古いオブジェクトが Update メソッドによって新しいオブジェクトに渡され、そのオブジェクトの XML が適切な場所に変更されます。既定では、すべての拡張可能なオブジェクトが CanUpdate を実装して false を返します。このため、渡される XML は更新されません。

使用例

次のコード例では、更新を有効および無効にします。UpdatePackage を true に設定し、値を出力してから、このプロパティの値を false にリセットして、この値を再度出力します。

class ApplicationTests
    {
        static void Main(string[] args)
        {
            Application app = new Application();
           
            Boolean updatePkg = true;
            app.UpdatePackage = updatePkg;
            Console.WriteLine(app.UpdatePackage);

            updatePkg = false;
            app.UpdatePackage = updatePkg;
            Console.WriteLine(app.UpdatePackage);
        }
    }
Class ApplicationTests
        Shared  Sub Main(ByVal args() As String)
            Dim app As Application = New Application() 
 
            Dim updatePkg As Boolean = True 
            app.UpdatePackage = updatePkg
            Console.WriteLine(app.UpdatePackage)
 
            updatePkg = False
            app.UpdatePackage = updatePkg
            Console.WriteLine(app.UpdatePackage)
        End Sub
End Class

サンプルの出力 :

True

False