From 5794020ee29b1f5caced9a3fd8e314eec1b5d267 Mon Sep 17 00:00:00 2001 From: Matt Parker <61717342+MattParkerDev@users.noreply.github.com> Date: Tue, 18 Nov 2025 23:25:55 +1000 Subject: [PATCH] Support reloading multi tfm projects --- src/SharpIDE.Application/Features/Analysis/RoslynAnalysis.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/SharpIDE.Application/Features/Analysis/RoslynAnalysis.cs b/src/SharpIDE.Application/Features/Analysis/RoslynAnalysis.cs index 9c72cd9..baed726 100644 --- a/src/SharpIDE.Application/Features/Analysis/RoslynAnalysis.cs +++ b/src/SharpIDE.Application/Features/Analysis/RoslynAnalysis.cs @@ -234,10 +234,9 @@ public class RoslynAnalysis(ILogger logger, BuildService buildSe // The ProjectIds will not match however, so we need to match on FilePath // Since the ProjectIds don't match, we also need to remap all ProjectReferences to the existing ProjectIds // same for documents - // TODO: Handle multiple TFMs - loadedProjectInfos would contain multiple projects with the same FilePath var projectInfosToUpdateWith = loadedProjectInfos.Select(loadedProjectInfo => { - var existingProject = _workspace.CurrentSolution.Projects.Single(p => p.FilePath == loadedProjectInfo.FilePath); + var existingProject = _workspace.CurrentSolution.Projects.Single(p => p.FilePath == loadedProjectInfo.FilePath && p.Name == loadedProjectInfo.Name); var projectInfo = loadedProjectInfo .WithId(existingProject.Id) .WithDocuments(MapDocuments(_workspace.CurrentSolution, existingProject.Id, loadedProjectInfo.Documents))