Application.Upgrade Method

Upgrades one or more Integration Services packages from a specified source location to a specified destination location.

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


Public Function Upgrade ( _
    packages As IEnumerable(Of UpgradePackageInfo), _
    source As StorageInfo, _
    destination As StorageInfo, _
    options As BatchUpgradeOptions, _
    events As IDTSEvents _
) As UpgradeResult
Dim instance As Application
Dim packages As IEnumerable(Of UpgradePackageInfo)
Dim source As StorageInfo
Dim destination As StorageInfo
Dim options As BatchUpgradeOptions
Dim events As IDTSEvents
Dim returnValue As UpgradeResult

returnValue = instance.Upgrade(packages, _
    source, destination, options, events)
public UpgradeResult Upgrade(
    IEnumerable<UpgradePackageInfo> packages,
    StorageInfo source,
    StorageInfo destination,
    BatchUpgradeOptions options,
    IDTSEvents events
UpgradeResult^ Upgrade(
    IEnumerable<UpgradePackageInfo^>^ packages, 
    StorageInfo^ source, 
    StorageInfo^ destination, 
    BatchUpgradeOptions^ options, 
    IDTSEvents^ events
member Upgrade : 
        packages:IEnumerable<UpgradePackageInfo> * 
        source:StorageInfo * 
        destination:StorageInfo * 
        options:BatchUpgradeOptions * 
        events:IDTSEvents -> UpgradeResult 
public function Upgrade(
    packages : IEnumerable<UpgradePackageInfo>, 
    source : StorageInfo, 
    destination : StorageInfo, 
    options : BatchUpgradeOptions, 
    events : IDTSEvents
) : UpgradeResult


Return Value

Type: Microsoft.SqlServer.Dts.Runtime.UpgradeResult
An UpgradeResult object that specifies the result of upgrading one or more packages.


The following example shows how to upgrade a collection of packages. The original packages and the upgrade packages are stored in a folder in the file system.

using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;

namespace ConsoleApplication1
    class Program
        static void Main(string[] args)

            Application app = new Application();

            UpgradePackageInfo packinfo1 = new UpgradePackageInfo("C:\\temp\\Package.dtsx", "C:\\temp\\Package.dtsx", null);
            UpgradePackageInfo packinfo2 = new UpgradePackageInfo("C:\\temp\\Package2.dtsx", "C:\\temp\\Package2.dtsx", null);

            Collection<UpgradePackageInfo> packages = new Collection<UpgradePackageInfo>();

            StorageInfo storeinfoSource = StorageInfo.NewFileStorage();
            storeinfoSource.RootFolder = "C:\\temp";
            StorageInfo storeinfoDest = StorageInfo.NewFileStorage();
            BatchUpgradeOptions upgradeOpts = new BatchUpgradeOptions();
            upgradeOpts.Validate = true;
            upgradeOpts.BackupOldPackages = true;
            upgradeOpts.ContinueOnError = true;
            upgradeOpts.ValidationFailureAsError = true;        
            MyEventsClass eventsClass = new MyEventsClass();

            app.Upgrade(packages, storeinfoSource, storeinfoDest, upgradeOpts, eventsClass);


    class MyEventsClass : DefaultEvents
        public override void OnPreExecute(Executable exec, ref bool fireAgain)
            Console.WriteLine("The PreExecute event of the " + exec.ToString() + " has been raised.");