diff --git a/src/NuGetReferenceSwitcher.Presentation/Models/ReferenceModel.cs b/src/NuGetReferenceSwitcher.Presentation/Models/ReferenceModel.cs
index 40e0fda..7473ffe 100644
--- a/src/NuGetReferenceSwitcher.Presentation/Models/ReferenceModel.cs
+++ b/src/NuGetReferenceSwitcher.Presentation/Models/ReferenceModel.cs
@@ -8,6 +8,7 @@
using VSLangProj;
+
namespace NuGetReferenceSwitcher.Presentation.Models
{
public class ReferenceModel
diff --git a/src/NuGetReferenceSwitcher.Presentation/NuGetReferenceSwitcher.Presentation.csproj b/src/NuGetReferenceSwitcher.Presentation/NuGetReferenceSwitcher.Presentation.csproj
index 58ff0e6..6a3c9a3 100644
--- a/src/NuGetReferenceSwitcher.Presentation/NuGetReferenceSwitcher.Presentation.csproj
+++ b/src/NuGetReferenceSwitcher.Presentation/NuGetReferenceSwitcher.Presentation.csproj
@@ -37,9 +37,6 @@
StrongNameKey.snk
-
- True
-
False
@@ -50,29 +47,24 @@
True
+
+ ..\packages\Microsoft.VisualStudio.Interop.17.2.32505.113\lib\net472\Microsoft.VisualStudio.Interop.dll
+
-
+
+ False
+ ..\..\..\NugetSwitcher\src\NuGetReferenceSwitcher.Presentation\bin\Debug\Microsoft.VisualStudio.Shell.15.0.dll
+
-
-
-
-
- true
-
-
- true
-
-
-
-
..\packages\MyToolkit.2.3.12.0\lib\portable-net45+wp8+win8+wpa81\MyToolkit.dll
..\packages\MyToolkit.Extended.2.3.12.0\lib\net45\MyToolkit.Extended.dll
+
@@ -84,8 +76,9 @@
-
- True
+
+ False
+ ..\..\..\NugetSwitcher\src\NuGetReferenceSwitcher.Presentation\bin\Debug\VSLangProj.dll
diff --git a/src/NuGetReferenceSwitcher.Presentation/Views/MainDialog.xaml b/src/NuGetReferenceSwitcher.Presentation/Views/MainDialog.xaml
index 0c0c771..067d6fa 100644
--- a/src/NuGetReferenceSwitcher.Presentation/Views/MainDialog.xaml
+++ b/src/NuGetReferenceSwitcher.Presentation/Views/MainDialog.xaml
@@ -10,11 +10,11 @@
WindowStartupLocation="CenterScreen">
-
+
diff --git a/src/NuGetReferenceSwitcher.Presentation/packages.config b/src/NuGetReferenceSwitcher.Presentation/packages.config
index a633c3a..002a3f8 100644
--- a/src/NuGetReferenceSwitcher.Presentation/packages.config
+++ b/src/NuGetReferenceSwitcher.Presentation/packages.config
@@ -1,5 +1,6 @@
+
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22.sln b/src/NuGetReferenceSwitcher.VS22.sln
new file mode 100644
index 0000000..47aa62e
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22.sln
@@ -0,0 +1,47 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.2.32602.215
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{ACE60C03-4FB9-498F-A6E3-8D20C10F0C4E}"
+ ProjectSection(SolutionItems) = preProject
+ IntegrationTests.testsettings = IntegrationTests.testsettings
+ UnitTests.testsettings = UnitTests.testsettings
+ EndProjectSection
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NuGetReferenceSwitcher.VS22", "NuGetReferenceSwitcher.VS22\NuGetReferenceSwitcher.VS22.csproj", "{738F6C75-AA84-44ED-9999-084522C47122}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "NuGetReferenceSwitcher.Presentation", "NuGetReferenceSwitcher.Presentation\NuGetReferenceSwitcher.Presentation.csproj", "{72D2BBE2-B1F7-4782-B7BD-CA377F895746}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {738F6C75-AA84-44ED-9999-084522C47122}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {738F6C75-AA84-44ED-9999-084522C47122}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {738F6C75-AA84-44ED-9999-084522C47122}.Debug|x86.ActiveCfg = Debug|x86
+ {738F6C75-AA84-44ED-9999-084522C47122}.Debug|x86.Build.0 = Debug|x86
+ {738F6C75-AA84-44ED-9999-084522C47122}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {738F6C75-AA84-44ED-9999-084522C47122}.Release|Any CPU.Build.0 = Release|Any CPU
+ {738F6C75-AA84-44ED-9999-084522C47122}.Release|x86.ActiveCfg = Release|x86
+ {738F6C75-AA84-44ED-9999-084522C47122}.Release|x86.Build.0 = Release|x86
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Debug|x86.Build.0 = Debug|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Release|Any CPU.Build.0 = Release|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Release|x86.ActiveCfg = Release|Any CPU
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}.Release|x86.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {A693A6CB-F451-44A6-A2E1-66CAB6974F7A}
+ EndGlobalSection
+EndGlobal
diff --git a/src/NuGetReferenceSwitcher.VS22/GlobalSuppressions.cs b/src/NuGetReferenceSwitcher.VS22/GlobalSuppressions.cs
new file mode 100644
index 0000000..a893f9d
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/GlobalSuppressions.cs
@@ -0,0 +1,11 @@
+// This file is used by Code Analysis to maintain SuppressMessage
+// attributes that are applied to this project. Project-level
+// suppressions either have no target or are given a specific target
+// and scoped to a namespace, type, member, etc.
+//
+// To add a suppression to this file, right-click the message in the
+// Error List, point to "Suppress Message(s)", and click "In Project
+// Suppression File". You do not need to add suppressions to this
+// file manually.
+
+[assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1017:MarkAssembliesWithComVisible")]
diff --git a/src/NuGetReferenceSwitcher.VS22/Guids.cs b/src/NuGetReferenceSwitcher.VS22/Guids.cs
new file mode 100644
index 0000000..2b62ceb
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/Guids.cs
@@ -0,0 +1,15 @@
+// Guids.cs
+// MUST match guids.h
+
+using System;
+
+namespace RicoSuter.NuGetReferenceSwitcher
+{
+ static class GuidList
+ {
+ public const string guidNuGetReferenceSwitcherPkgString = "87a7b0e9-e41c-47c8-953c-b81650401edb";
+ public const string guidNuGetReferenceSwitcherCmdSetString = "ae6a9753-b188-45b5-8563-70bc990bf707";
+
+ public static readonly Guid guidNuGetReferenceSwitcherCmdSet = new Guid(guidNuGetReferenceSwitcherCmdSetString);
+ };
+}
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/Key.snk b/src/NuGetReferenceSwitcher.VS22/Key.snk
new file mode 100644
index 0000000..3dfa651
Binary files /dev/null and b/src/NuGetReferenceSwitcher.VS22/Key.snk differ
diff --git a/src/NuGetReferenceSwitcher.VS22/MyToolkit.Extended.dll b/src/NuGetReferenceSwitcher.VS22/MyToolkit.Extended.dll
new file mode 100644
index 0000000..7b01c2d
Binary files /dev/null and b/src/NuGetReferenceSwitcher.VS22/MyToolkit.Extended.dll differ
diff --git a/src/NuGetReferenceSwitcher.VS22/MyToolkit.dll b/src/NuGetReferenceSwitcher.VS22/MyToolkit.dll
new file mode 100644
index 0000000..992a30d
Binary files /dev/null and b/src/NuGetReferenceSwitcher.VS22/MyToolkit.dll differ
diff --git a/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.VS22.csproj b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.VS22.csproj
new file mode 100644
index 0000000..4db0b36
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.VS22.csproj
@@ -0,0 +1,380 @@
+
+
+
+
+ 16.0
+ 12.0
+ $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)
+
+
+
+
+ 12.0
+ publish\
+ true
+ Disk
+ false
+ Foreground
+ 7
+ Days
+ false
+ false
+ true
+ 0
+ 1.0.0.%2a
+ false
+ false
+ true
+
+ Program
+ $(DevEnvDir)\devenv.exe
+ /rootsuffix Exp
+
+
+
+
+
+ Debug
+ AnyCPU
+ 2.0
+ {738F6C75-AA84-44ED-9999-084522C47122}
+ {82b43b9b-a64c-4715-b499-d71e9ca2bd60};{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ Library
+ Properties
+ RicoSuter.NuGetReferenceSwitcher
+ NuGetReferenceSwitcher
+ True
+ Key.snk
+ v4.7.2
+
+
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ pdbonly
+ true
+ ..\..\build\Output\VS19\
+ TRACE
+ prompt
+ 4
+ true
+
+
+
+ ..\packages\MessagePack.2.3.85\lib\netstandard2.0\MessagePack.dll
+
+
+ ..\packages\MessagePack.Annotations.2.3.85\lib\netstandard2.0\MessagePack.Annotations.dll
+
+
+ ..\packages\Microsoft.Bcl.AsyncInterfaces.6.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll
+
+
+ ..\packages\Microsoft.Build.Framework.17.1.0\lib\net472\Microsoft.Build.Framework.dll
+
+
+
+ ..\packages\Microsoft.ServiceHub.Client.3.1.4097\lib\net472\Microsoft.ServiceHub.Client.dll
+
+
+ ..\packages\Microsoft.ServiceHub.Framework.3.1.4097\lib\netstandard2.0\Microsoft.ServiceHub.Framework.dll
+
+
+ ..\packages\Microsoft.VisualStudio.ComponentModelHost.17.2.3194\lib\net472\Microsoft.VisualStudio.ComponentModelHost.dll
+
+
+ ..\packages\Microsoft.VisualStudio.GraphModel.17.2.32505.113\lib\net472\Microsoft.VisualStudio.GraphModel.dll
+
+
+ ..\packages\Microsoft.VisualStudio.ImageCatalog.17.2.32505.113\lib\net472\Microsoft.VisualStudio.ImageCatalog.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Imaging.17.2.32505.113\lib\net472\Microsoft.VisualStudio.Imaging.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Imaging.Interop.14.0.DesignTime.17.2.32505.113\lib\net472\Microsoft.VisualStudio.Imaging.Interop.14.0.DesignTime.dll
+ True
+
+
+ ..\packages\Microsoft.VisualStudio.Interop.17.2.32505.113\lib\net472\Microsoft.VisualStudio.Interop.dll
+
+
+
+ ..\packages\Microsoft.VisualStudio.ProjectAggregator.17.2.32505.113\lib\net472\Microsoft.VisualStudio.ProjectAggregator.dll
+ True
+
+
+ ..\packages\Microsoft.VisualStudio.RemoteControl.16.3.44\lib\net45\Microsoft.VisualStudio.RemoteControl.dll
+
+
+ ..\packages\Microsoft.VisualStudio.RpcContracts.17.2.31\lib\netstandard2.0\Microsoft.VisualStudio.RpcContracts.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Setup.Configuration.Interop.3.0.4492\lib\net35\Microsoft.VisualStudio.Setup.Configuration.Interop.dll
+ True
+
+
+ False
+ ..\NuGetReferenceSwitcher.Presentation\bin\Debug\Microsoft.VisualStudio.Shell.15.0.dll
+
+
+ False
+ bin\Debug\Microsoft.VisualStudio.Shell.Framework.dll
+
+
+
+ ..\packages\Microsoft.VisualStudio.Telemetry.16.4.56\lib\net45\Microsoft.VisualStudio.Telemetry.dll
+
+
+
+
+ ..\packages\Microsoft.VisualStudio.Threading.17.2.32\lib\net472\Microsoft.VisualStudio.Threading.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Utilities.17.2.32505.113\lib\net472\Microsoft.VisualStudio.Utilities.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Utilities.Internal.16.3.36\lib\net45\Microsoft.VisualStudio.Utilities.Internal.dll
+
+
+ ..\packages\Microsoft.VisualStudio.Validation.17.0.53\lib\netstandard2.0\Microsoft.VisualStudio.Validation.dll
+
+
+ ..\packages\Microsoft.Win32.Registry.5.0.0\lib\net461\Microsoft.Win32.Registry.dll
+
+
+ False
+ ..\packages\MyToolkit.2.3.12.0\lib\portable-net45+wp8+win8+wpa81\MyToolkit.dll
+
+
+ False
+ ..\packages\MyToolkit.Extended.2.3.12.0\lib\net45\MyToolkit.Extended.dll
+
+
+ ..\packages\Nerdbank.Streams.2.8.57\lib\netstandard2.0\Nerdbank.Streams.dll
+
+
+
+ ..\packages\Newtonsoft.Json.13.0.1\lib\net45\Newtonsoft.Json.dll
+
+
+
+
+ ..\packages\StreamJsonRpc.2.11.35\lib\netstandard2.0\StreamJsonRpc.dll
+
+
+
+ ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.5.0.0\lib\net461\System.Collections.Immutable.dll
+
+
+
+ ..\packages\System.Composition.AttributedModel.6.0.0\lib\net461\System.Composition.AttributedModel.dll
+
+
+ ..\packages\System.Composition.Convention.6.0.0\lib\net461\System.Composition.Convention.dll
+
+
+ ..\packages\System.Composition.Hosting.6.0.0\lib\net461\System.Composition.Hosting.dll
+
+
+ ..\packages\System.Composition.Runtime.6.0.0\lib\net461\System.Composition.Runtime.dll
+
+
+ ..\packages\System.Composition.TypedParts.6.0.0\lib\net461\System.Composition.TypedParts.dll
+
+
+
+
+
+
+ ..\packages\System.Diagnostics.DiagnosticSource.6.0.0\lib\net461\System.Diagnostics.DiagnosticSource.dll
+
+
+
+
+
+ ..\packages\System.IO.Pipelines.6.0.1\lib\net461\System.IO.Pipelines.dll
+
+
+
+ ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll
+
+
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
+
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ ..\packages\System.Security.AccessControl.6.0.0\lib\net461\System.Security.AccessControl.dll
+
+
+
+
+
+
+ ..\packages\System.Security.Principal.Windows.5.0.0\lib\net461\System.Security.Principal.Windows.dll
+
+
+ ..\packages\System.Text.Encodings.Web.6.0.0\lib\net461\System.Text.Encodings.Web.dll
+
+
+ ..\packages\System.Text.Json.6.0.0\lib\net461\System.Text.Json.dll
+
+
+ ..\packages\System.Threading.AccessControl.6.0.0\lib\net461\System.Threading.AccessControl.dll
+
+
+ ..\packages\System.Threading.Tasks.Dataflow.6.0.0\lib\net461\System.Threading.Tasks.Dataflow.dll
+
+
+ ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll
+
+
+
+ ..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll
+
+
+
+
+
+ False
+ ..\NuGetReferenceSwitcher.Presentation\bin\Debug\VSLangProj.dll
+
+
+
+
+
+ {00020430-0000-0000-C000-000000000046}
+ 2
+ 0
+ 0
+ primary
+ False
+ False
+
+
+
+
+
+ True
+ True
+ Resources.resx
+
+
+
+
+
+
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+ true
+ VSPackage
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+ Menus.ctmenu
+
+
+
+
+
+
+
+ Always
+ true
+
+
+ Always
+ true
+
+
+
+
+
+ False
+ Microsoft .NET Framework 4.5 %28x86 and x64%29
+ true
+
+
+ False
+ .NET Framework 3.5 SP1
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {72D2BBE2-B1F7-4782-B7BD-CA377F895746}
+ NuGetReferenceSwitcher.Presentation
+
+
+
+ true
+
+
+
+
+
+ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.vsct b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.vsct
new file mode 100644
index 0000000..d689748
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcher.vsct
@@ -0,0 +1,116 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcherPackage.cs b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcherPackage.cs
new file mode 100644
index 0000000..d2e9a3f
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/NuGetReferenceSwitcherPackage.cs
@@ -0,0 +1,75 @@
+//-----------------------------------------------------------------------
+//
+// Copyright (c) Rico Suter. All rights reserved.
+//
+// http://nugetreferenceswitcher.codeplex.com/license
+// Rico Suter, mail@rsuter.com
+//-----------------------------------------------------------------------
+
+using System;
+using System.Runtime.InteropServices;
+using System.ComponentModel.Design;
+using System.IO.Packaging;
+using System.Linq;
+using System.Windows;
+using System.Windows.Interop;
+using EnvDTE;
+using Microsoft.VisualStudio.Shell.Interop;
+using Microsoft.VisualStudio.Shell;
+
+//using NuGetReferenceSwitcher.Presentation.Views;
+using VSLangProj;
+using Package = Microsoft.VisualStudio.Shell.Package;
+using NuGetReferenceSwitcher.Presentation.Views;
+
+namespace RicoSuter.NuGetReferenceSwitcher
+{
+ [PackageRegistration(UseManagedResourcesOnly = true)]
+ [InstalledProductRegistration("#110", "#112", "1.0", IconResourceID = 400)]
+ [ProvideMenuResource("Menus.ctmenu", 1)]
+ [Guid(GuidList.guidNuGetReferenceSwitcherPkgString)]
+ public sealed class NuGetReferenceSwitcherPackage : Package
+ {
+ protected override void Initialize()
+ {
+ base.Initialize();
+
+ var mcs = GetService(typeof(IMenuCommandService)) as OleMenuCommandService;
+ if (null != mcs)
+ {
+ var menuCommandId = new CommandID(GuidList.guidNuGetReferenceSwitcherCmdSet, (int)PkgCmdIDList.cmdidSwitchNuGetAndProjectReferences);
+ var menuItem = new MenuCommand(OnShowDialog, menuCommandId);
+ mcs.AddCommand(menuItem);
+ }
+ }
+
+ private void OnShowDialog(object sender, EventArgs e)
+ {
+ var application = (DTE)GetService(typeof(SDTE));
+ if (application.Solution == null || !application.Solution.IsOpen)
+ MessageBox.Show("Please open a solution first. ", "No solution");
+ else
+ {
+ if (application.Solution.IsDirty) // solution must be saved otherwise adding/removing projects will raise errors
+ {
+ MessageBox.Show("Please save your solution first. \n" +
+ "Select the solution in the Solution Explorer and press Ctrl-S. ",
+ "Solution not saved");
+ }
+ else if (application.Solution.Projects.OfType().Any(p => p.IsDirty))
+ {
+ MessageBox.Show("Please save your projects first. \n" +
+ "Select the project in the Solution Explorer and press Ctrl-S. ",
+ "Project not saved");
+ }
+ else
+ {
+ var window = new MainDialog(application, GetType().Assembly);
+ var helper = new WindowInteropHelper(window);
+ helper.Owner = (IntPtr)application.MainWindow.HWnd;
+ window.ShowModal();
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/PkgCmdID.cs b/src/NuGetReferenceSwitcher.VS22/PkgCmdID.cs
new file mode 100644
index 0000000..25bb133
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/PkgCmdID.cs
@@ -0,0 +1,12 @@
+// PkgCmdID.cs
+// MUST match PkgCmdID.h
+
+namespace RicoSuter.NuGetReferenceSwitcher
+{
+ static class PkgCmdIDList
+ {
+ public const uint cmdidSwitchNuGetAndProjectReferences = 0x100;
+
+
+ };
+}
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/Properties/AssemblyInfo.cs b/src/NuGetReferenceSwitcher.VS22/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..cb68f08
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/Properties/AssemblyInfo.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Reflection;
+using System.Resources;
+using System.Runtime.InteropServices;
+
+[assembly: AssemblyTitle("NuGetReferenceSwitcher")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("Rico Suter")]
+[assembly: AssemblyProduct("NuGetReferenceSwitcher")]
+[assembly: AssemblyCopyright("")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: ComVisible(false)]
+[assembly: CLSCompliant(false)]
+[assembly: NeutralResourcesLanguage("en-US")]
+
+[assembly: AssemblyVersion("1.9.*")]
diff --git a/src/NuGetReferenceSwitcher.VS22/Resources.Designer.cs b/src/NuGetReferenceSwitcher.VS22/Resources.Designer.cs
new file mode 100644
index 0000000..132edf7
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/Resources.Designer.cs
@@ -0,0 +1,63 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace RicoSuter.NuGetReferenceSwitcher {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("RicoSuter.NuGetReferenceSwitcher.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/src/NuGetReferenceSwitcher.VS22/Resources.resx b/src/NuGetReferenceSwitcher.VS22/Resources.resx
new file mode 100644
index 0000000..891c592
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/Resources.resx
@@ -0,0 +1,129 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/Resources/Images.png b/src/NuGetReferenceSwitcher.VS22/Resources/Images.png
new file mode 100644
index 0000000..bf17e6b
Binary files /dev/null and b/src/NuGetReferenceSwitcher.VS22/Resources/Images.png differ
diff --git a/src/NuGetReferenceSwitcher.VS22/Resources/Package.ico b/src/NuGetReferenceSwitcher.VS22/Resources/Package.ico
new file mode 100644
index 0000000..449296f
Binary files /dev/null and b/src/NuGetReferenceSwitcher.VS22/Resources/Package.ico differ
diff --git a/src/NuGetReferenceSwitcher.VS22/VSPackage.resx b/src/NuGetReferenceSwitcher.VS22/VSPackage.resx
new file mode 100644
index 0000000..1e3f16d
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/VSPackage.resx
@@ -0,0 +1,140 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ NuGetReferenceSwitcher
+
+
+ Information about my package
+
+
+ Resources\Package.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/packages.config b/src/NuGetReferenceSwitcher.VS22/packages.config
new file mode 100644
index 0000000..966f5eb
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/packages.config
@@ -0,0 +1,62 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/NuGetReferenceSwitcher.VS22/source.extension.vsixmanifest b/src/NuGetReferenceSwitcher.VS22/source.extension.vsixmanifest
new file mode 100644
index 0000000..76ef17e
--- /dev/null
+++ b/src/NuGetReferenceSwitcher.VS22/source.extension.vsixmanifest
@@ -0,0 +1,27 @@
+
+
+
+
+ NuGet Reference Switcher for Visual Studio 2019
+ Visual Studio extension which automatically switches NuGet assembly references to project references and vice-versa. This is useful when developing applications which reference own NuGet packages: When developing an application, switch to project references so that all code is editable and debuggable. After finishing the development, create new NuGet package versions, switch back to NuGet references and upgrade to the new NuGet versions.
+ https://nugetreferenceswitcher.codeplex.com
+ Deployment, NuGet, Dependency management
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+