Application.UpdatePackage Property

Gets or sets a Boolean that indicates whether packages can be updated when an updated version is found.

Namespace:  Microsoft.SqlServer.Dts.Runtime
Assembly:  Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)

Public Property UpdatePackage As Boolean 
Dim instance As Application 
Dim value As Boolean 

value = instance.UpdatePackage

instance.UpdatePackage = value

Property Value

Type: System.Boolean
true if packages can be updated when an updated version is found; otherwise, false. The default value is false.

If extensible objects, such as tasks, Foreach enumerators, log providers, and connection managers are updated, older packages can be updated at load time. For that to occur, the following two properties must be set to true in the application object before loading: UpdatePackage, and UpdateObjects.

Each extensible object must also implement its CanUpdate property.

The runtime tries to load the old package, and if it finds an older object, attempts an update. The runtime first enumerates all the extensible objects it contains, excluding the Pipeline, which is treated separately and locally. For each object, the runtime then calls CanUpdate on the new objects, passing the ID of the old object. If the new object can update the old one, the old object is passed to the new one by using its Update method, and its XML is changed in place. By default, all extensible objects implement CanUpdate to return false; therefore, the XML that is passed is not updated.

The following code example shows how to enable and disable updates. It sets the UpdatePackage to true, prints the value, resets the value of the property to false, and prints out the value again.

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

Sample Output:



Community Additions