Как читать элементы csproj xml во время выполнения? - PullRequest
0 голосов
/ 28 марта 2019

Я пытаюсь прочитать определенные элементы XML из файла csproj (файл моего проекта), в частности элемент <ApplicationVersion> (я развертываю в ClickOnce - (это не версия сборки)

Isесть опция времени выполнения для чтения этого поля? или единственный вариант - просто проанализировать файл csproj как файл XML?

1 Ответ

0 голосов
/ 28 марта 2019

Я в итоге сделал следующее:

Я использовал совет (комментарий) Яна Кемпа для установки Microsoft.Build, Microsoft.Build.Utilities.Core и Microsoft.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"));
...