diff --git a/src/.vs/NuGetReferenceSwitcher.VS17/v15/sqlite3/storage.ide b/src/.vs/NuGetReferenceSwitcher.VS17/v15/sqlite3/storage.ide index 3371371..b343761 100644 Binary files a/src/.vs/NuGetReferenceSwitcher.VS17/v15/sqlite3/storage.ide and b/src/.vs/NuGetReferenceSwitcher.VS17/v15/sqlite3/storage.ide differ diff --git a/src/NuGetReferenceSwitcher.Presentation/Models/ProjectModel.cs b/src/NuGetReferenceSwitcher.Presentation/Models/ProjectModel.cs index c025648..d45259f 100644 --- a/src/NuGetReferenceSwitcher.Presentation/Models/ProjectModel.cs +++ b/src/NuGetReferenceSwitcher.Presentation/Models/ProjectModel.cs @@ -107,9 +107,8 @@ public bool AddReference(string assemblyPath) { if (File.Exists(assemblyPath)) { - var reference = _vsProject.References.Add(assemblyPath) as Reference4; - - if (reference != null) + // ReSharper disable once SuspiciousTypeConversion.Global + if (_vsProject.References.Add(assemblyPath) is Reference4 reference) { reference.SpecificVersion = true; } @@ -165,31 +164,13 @@ private void LoadReferences() { var reference = new ReferenceModel(vsReference); References.Add(reference); - if (vsReference.Path.ToLower().Contains("/packages/") || vsReference.Path.ToLower().Contains("\\packages\\")) - NuGetReferences.Add(reference); - } - } - - public void FixUpNuGetReferences() - { - XDocument xDoc = XDocument.Load(Path); - XNamespace ns = "http://schemas.microsoft.com/developer/msbuild/2003"; - - var itemGroup = xDoc.Root?.Elements(ns + "ItemGroup").Where(x => x.Elements(ns + "Reference").Any()).FirstOrDefault(); - - if (itemGroup != null) - { - foreach (XElement reference in itemGroup.Elements(ns + "Reference").Where(x => x.Elements(ns + "HintPath").Any())) + if (!string.IsNullOrWhiteSpace(vsReference.Path)) { - foreach (XElement version in reference.Elements(ns + "SpecificVersion")) - { - version.Remove(); - } + if (vsReference.Path.ToLower().Contains("/packages/") || vsReference.Path.ToLower().Contains("\\packages\\")) + NuGetReferences.Add(reference); } } - - //xDoc.Save(Path); } } } \ No newline at end of file diff --git a/src/NuGetReferenceSwitcher.Presentation/ViewModels/MainDialogModel.cs b/src/NuGetReferenceSwitcher.Presentation/ViewModels/MainDialogModel.cs index 993d897..c04cd18 100644 --- a/src/NuGetReferenceSwitcher.Presentation/ViewModels/MainDialogModel.cs +++ b/src/NuGetReferenceSwitcher.Presentation/ViewModels/MainDialogModel.cs @@ -15,7 +15,6 @@ using System.Windows; using System.Windows.Threading; using EnvDTE; -using EnvDTE80; using MyToolkit.Build; using MyToolkit.Collections; using MyToolkit.Mvvm; @@ -208,7 +207,7 @@ private List GetAllProjects(IEnumerable objects) foreach (var project in objects) { - if (project.Kind == ProjectKinds.vsProjectKindSolutionFolder) + if (project.Kind == "{66A26720-8FB5-11D2-AA7E-00C04F688DDE}") // folder) { projects.AddRange(GetAllProjects(project.ProjectItems .OfType() diff --git a/src/NuGetReferenceSwitcher.VS17/source.extension.vsixmanifest b/src/NuGetReferenceSwitcher.VS17/source.extension.vsixmanifest index 601e45a..c10fd02 100644 --- a/src/NuGetReferenceSwitcher.VS17/source.extension.vsixmanifest +++ b/src/NuGetReferenceSwitcher.VS17/source.extension.vsixmanifest @@ -1,10 +1,10 @@  - - NuGet Reference Switcher for Visual Studio 2017 + + NuGet Package Ref Switcher for VS 2017 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 + https://github.com/KwalityKoder/NuGetReferenceSwitcher Deployment, NuGet, Dependency management