Как получить доступ к списку свойств MSBuild при кодировании пользовательской задачи?

Я должен записать пользовательскую задачу, которые печатают все определенные свойства (незарезервированные). Таким образом в моем коде C#, я хочу доступ к списку свойств механизма MSBuild, и я не знаю как. Помогите.

6
задан alexandrul 19 May 2010 в 10:21
поделиться

1 ответ

Использование .NET 4:

using Microsoft.Build.Evaluation;
using Microsoft.Build.Utilities;

namespace MSBuildTasks
{
    public class GetAllProperties : Task
    {
        public override bool Execute()
        {
            Project project = new Project(BuildEngine.ProjectFileOfTaskNode);
            foreach(ProjectProperty evaluatedProperty in project.AllEvaluatedProperties)
            {
                if(!evaluatedProperty.IsEnvironmentProperty &&
                    !evaluatedProperty.IsGlobalProperty &&
                    !evaluatedProperty.IsReservedProperty)
                {
                    string name = evaluatedProperty.Name;
                    string value = evaluatedProperty.EvaluatedValue;
                }

                // Do your stuff
            }

            return true;
        }
    }
}
3
ответ дан 10 December 2019 в 00:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: