如何在运行时中读取csproj xml元素?

时间:2019-03-28 07:18:37

标签: c# visual-studio-2017

我正在尝试从csproj文件(我的项目文件)中读取特定的XML元素,特别是update?overwrite=true元素(我正在ClickOnce下进行部署-(这不是程序集版本)

是否有运行时选项可以读取此字段?还是唯一的选择就是将csproj文件简单地解析为xml文件?

1 个答案:

答案 0 :(得分:0)

我最终做了以下事情:

我使用了伊恩·肯普(Ian Kemp)的建议(评论)来安装Microsoft.BuildMicrosoft.Build.Utilities.CoreMicrosoft.Build.Framework nuget软件包。

然后使用以下代码将csproj文件加载到内存中并获取特定的属性值作为字符串

Project project = new Project(Path.Combine(Directory.GetParent(Environment.CurrentDirectory).Parent.FullName, "<my_project>.csproj"));
                version = 
Version application_version = Version.Parse(project.GetPropertyValue("ApplicationVersion"));