IVsProjectUpgradeViaFactory2 Interface
Extends, but does not inherit from, IVsProjectUpgradeViaFactory by providing a method to call on cancellation of the project upgrade.
Namespace: Microsoft.VisualStudio.Shell.Interop
Assembly: Microsoft.VisualStudio.Shell.Interop.8.0 (in Microsoft.VisualStudio.Shell.Interop.8.0.dll)
Syntax
'Declaration
<InterfaceTypeAttribute()> _
<GuidAttribute("E5F6CFF6-C3E1-45BC-9559-C03F94FDF15B")> _
Public Interface IVsProjectUpgradeViaFactory2
'Usage
Dim instance As IVsProjectUpgradeViaFactory2
[InterfaceTypeAttribute()]
[GuidAttribute("E5F6CFF6-C3E1-45BC-9559-C03F94FDF15B")]
public interface IVsProjectUpgradeViaFactory2
[InterfaceTypeAttribute()]
[GuidAttribute(L"E5F6CFF6-C3E1-45BC-9559-C03F94FDF15B")]
public interface class IVsProjectUpgradeViaFactory2
public interface IVsProjectUpgradeViaFactory2
Remarks
The new project upgrade architecture requires two calls: the first to check the project to see if an upgrade is necessary; the second to perform the upgrade. In some cases, this requires the factory to open the project file twice.
For performance reasons, you may want to cache the open required in UpgradeProject_CheckOnly. Then if no upgrade is required, part of the open has already taken place and the project can finish opening faster.
Caching the open may orphan the cached open if the upgrade is cancelled. If you cache information, you should implement this interface to clean up cached items connected to the project file.