使用 Microsoft.Build 命名空间从 Visual Studio .sln 文件获取项目列表
Get list of projects from Visual Studio .sln file using Microsoft.Build namespace
我想出了如何使用 Microsoft.Build 命名空间加载 .csproj 文件并提取几个属性:
var projectCollection = new ProjectCollection();
projectCollection.LoadProject(@"C:\path\to\my.csproj");
string assemblyName = projectCollection.LoadedProjects.First().GetPropertyValue("AssemblyName");
string outputPath = projectCollection.LoadedProjects.First().GetPropertyValue("OutputPath");
现在如何使用 Microsoft.Build 加载 .sln 文件并获取 .csproj 文件列表?
对于解析解决方案文件,您可以使用 SolutionFile
class:
var solutionFile = SolutionFile.Parse(@"SOLUTION_PATH.sln");
var projectNames = solutionFile.ProjectsInOrder.Select(p => p.ProjectName).ToList();
我想出了如何使用 Microsoft.Build 命名空间加载 .csproj 文件并提取几个属性:
var projectCollection = new ProjectCollection();
projectCollection.LoadProject(@"C:\path\to\my.csproj");
string assemblyName = projectCollection.LoadedProjects.First().GetPropertyValue("AssemblyName");
string outputPath = projectCollection.LoadedProjects.First().GetPropertyValue("OutputPath");
现在如何使用 Microsoft.Build 加载 .sln 文件并获取 .csproj 文件列表?
对于解析解决方案文件,您可以使用 SolutionFile
class:
var solutionFile = SolutionFile.Parse(@"SOLUTION_PATH.sln");
var projectNames = solutionFile.ProjectsInOrder.Select(p => p.ProjectName).ToList();