Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

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 UpgradeResult Upgrade(
	IEnumerable<UpgradePackageInfo> packages,
	StorageInfo source,
	StorageInfo destination,
	BatchUpgradeOptions options,
	IDTSEvents events


Type: System.Collections.Generic.IEnumerable<UpgradePackageInfo>
The collection of packages to be upgraded.
Type: Microsoft.SqlServer.Dts.Runtime.StorageInfo
An StorageInfo object that specifies the source location for the packages to be upgraded.
Type: Microsoft.SqlServer.Dts.Runtime.StorageInfo
The StorageInfo object that specifies the destination location for the packages to be upgraded.
Type: Microsoft.SqlServer.Dts.Runtime.BatchUpgradeOptions
A BatchUpgradeOptions object that specifies the options that will be applied to the packages during the upgrade process.
Type: Microsoft.SqlServer.Dts.Runtime.IDTSEvents
An IDTSEvents object.

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.");
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft