From 5cb6c3c604fbfd442b1c12be1ecb7c44f6d4798b Mon Sep 17 00:00:00 2001 From: "Matthew Parker [SSW]" <61717342+MattParkerDev@users.noreply.github.com> Date: Wed, 17 Jan 2024 16:21:55 +1000 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20Fix=20self=20contained=20app=20l?= =?UTF-8?q?ocating=20MSBuild?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DotNetSolutionTools.App/ViewModels/MainWindowViewModel.cs | 1 + DotNetSolutionTools.App/Views/MainWindow.axaml.cs | 8 ++++++-- DotNetSolutionTools.CLI/Program.cs | 4 ++++ DotNetSolutionTools.Core/DotNetSolutionTools.Core.csproj | 3 ++- 4 files changed, 13 insertions(+), 3 deletions(-) diff --git a/DotNetSolutionTools.App/ViewModels/MainWindowViewModel.cs b/DotNetSolutionTools.App/ViewModels/MainWindowViewModel.cs index a7c1d0c..39b4361 100644 --- a/DotNetSolutionTools.App/ViewModels/MainWindowViewModel.cs +++ b/DotNetSolutionTools.App/ViewModels/MainWindowViewModel.cs @@ -162,6 +162,7 @@ public partial class MainWindowViewModel : ViewModelBase { ResultsLabel = "Failed to update all projects in solution to .NET 8"; ParityResults?.Add(e.Message); + ParityResults?.Add(e.ToString()); } } diff --git a/DotNetSolutionTools.App/Views/MainWindow.axaml.cs b/DotNetSolutionTools.App/Views/MainWindow.axaml.cs index a8a82d5..ec2188b 100644 --- a/DotNetSolutionTools.App/Views/MainWindow.axaml.cs +++ b/DotNetSolutionTools.App/Views/MainWindow.axaml.cs @@ -1,6 +1,5 @@ using Avalonia.Controls; -using Avalonia.Interactivity; -using DotNetSolutionTools.App.ViewModels; +using Microsoft.Build.Locator; namespace DotNetSolutionTools.App.Views; @@ -8,6 +7,11 @@ public partial class MainWindow : Window { public MainWindow() { + var instance = MSBuildLocator + .QueryVisualStudioInstances() + .OrderByDescending(instance => instance.Version) + .First(); + MSBuildLocator.RegisterInstance(instance); InitializeComponent(); } } diff --git a/DotNetSolutionTools.CLI/Program.cs b/DotNetSolutionTools.CLI/Program.cs index 1efe2a7..1797cb6 100644 --- a/DotNetSolutionTools.CLI/Program.cs +++ b/DotNetSolutionTools.CLI/Program.cs @@ -1,4 +1,5 @@ using DotNetSolutionTools.CLI.Commands; +using Microsoft.Build.Locator; using Spectre.Console.Cli; var app = new CommandApp(); @@ -13,4 +14,7 @@ app.Configure(config => config.AddCommand("warnings-as-errors"); }); +var instance = MSBuildLocator.QueryVisualStudioInstances().OrderByDescending(instance => instance.Version).First(); +MSBuildLocator.RegisterInstance(instance); + return await app.RunAsync(args); diff --git a/DotNetSolutionTools.Core/DotNetSolutionTools.Core.csproj b/DotNetSolutionTools.Core/DotNetSolutionTools.Core.csproj index 6b095b7..7a66dde 100644 --- a/DotNetSolutionTools.Core/DotNetSolutionTools.Core.csproj +++ b/DotNetSolutionTools.Core/DotNetSolutionTools.Core.csproj @@ -7,7 +7,8 @@ - + +