【问题标题】:Figure out why Microsoft.Build.Evaluation.Project.Build() returns false弄清楚为什么 Microsoft.Build.Evaluation.Project.Build() 返回 false
【发布时间】:2017-05-04 14:29:07
【问题描述】:

我正在尝试使用 .csproj 文件构建 C# 项目。 为此,我使用以下代码:

Microsoft.Build.Evaluation.Project project = new Microsoft.Build.EvaluationProject(projectFile);
bool success = project.Build();

但并非所有项目都已构建,对于某些项目,我得到 false 作为 project.Build() 的结果。 任何想法如何理解出了什么问题?

或者也许任何人都可以建议使用 .csproj 文件编译项目的替代方法?

【问题讨论】:

    标签: c# build csproj


    【解决方案1】:

    您需要在Build 方法中添加一个ILogger 作为参数。我建议实施一个as the MSDN article suggests。只需复制粘贴他们的代码,添加任何缺少的引用,就可以了。

    那么你可以拨打Build如下:

    Microsoft.Build.Evaluation.Project project = new Microsoft.Build.Evaluation.Project(projectFile);
    BasicFileLogger logger = new BasicFileLogger();
    logger.Parameters = logFilePath;
    logger.Verbosity = LoggerVerbosity.Normal; //Increase it if you don't get enough data
    bool success = project.Build(logger);
    

    示例记录器会将您在正常构建期间看到的所有数据写入文件logFilePath。基于此,您应该能够辨别问题。

    【讨论】:

      猜你喜欢
      • 2015-04-06
      • 2014-06-28
      • 1970-01-01
      • 2012-11-17
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多