【问题标题】:How to Build C# Project Programmatically如何以编程方式构建 C# 项目
【发布时间】:2020-02-26 15:35:20
【问题描述】:

我在 Visual Studio 中有一些 C# 项目的解决方案。在另一个项目中,用户可以显示第一个解决方案中的所有项目。用户选择一些项目来构建。还可以在 Release/Debug 和 x64/x86/any 之间进行选择。

我可以用这段代码构建一个项目

Microsoft.build.Evaluation.project p = new Microsoft.build.Evaluation.project(project_path);
p.Build();

但我不知道如何使用选定的 Release/Debug 和 x64/x86/any 构建项目。

如何更改构建目标目录?

【问题讨论】:

    标签: c# build project programmatically


    【解决方案1】:
    Microsoft.Build.Evaluation.Project p = new Microsoft.Build.Evaluation.Project("path");
    p.SetGlobalProperty("Configuration", "Release");
    p.Build();
    

    应该让您更改用于构建项目的配置。如果你想改变它,用“配置”代替“平台”。

    【讨论】:

    • 如何选择x64/x86?
    • 没有测试过,不过我相信是 p.SetGlobalProperty("Platform", "x86");
    • 我不能 100% 确定,但您可能无法在 Project 对象上多次调用 SetGlobalProperty。您是否尝试过修改项目对象的 GlobalProperties 字典,或者至少在调试器中检查它。 (egpGlobalProperties.Add("Configuration", "Release"); p.GlobalProperties.Add("Platform", "Any CPU");) 另外,您需要确保为有问题的项目
    • 如何更改构建目标目录?
    • 这个通常在项目文件配置中设置。有什么理由需要以编程方式进行吗?另外,如果我的回答解决了您的问题,能否请您将其标记为“已回答”。
    猜你喜欢
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-22
    • 2016-05-04
    • 2017-09-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多