.net - Visual Studio (.sln) 构建运行程序和 MSBuild 之间的差异

标签 .net visual-studio msbuild continuous-integration teamcity

我正在尝试设置 TeamCity 使用 .Net 进行 CI 并配置我拥有的构建运行程序:

  1. Visual Studio (sln)
  2. MSBuild
  3. Visual Studio 2003

有什么区别?为什么要在同一类型的项目上进行三个构建? (除了 2003 年,我相信这只是 2003 年,为什么?)

针对这个问题,我们有 .exe 文件的构建运行程序:

  1. .NET 进程运行程序
  2. 命令行

“命令行”构建运行程序不适用于任何 .net 程序集?为什么选择 .Net Process Runner?

最佳答案

Visual Studio (sln)
如果您的解决方案很小并且不需要做花哨的事情,您可以使用Visual Studio (sln)构建运行器。它与执行 Project->Build(从 VS 菜单)时执行的操作完全相同。此选项非常容易配置,只需单击几下,您的 CI 服务器就会编译您的解决方案。

MSBuild
如果您需要做更多高级场景,除了简单的编译之外,例如应用不同的配置文件、将转换后的值插入配置文件、部署二进制文件等,您可以选择 MSBuild 选项。你会知道什么时候需要使用它,因为 sln builder 无法做一些事情。此选项需要一些构建脚本语言的知识,这是一种基于任务的、类似 xml 的语言。

关于.net - Visual Studio (.sln) 构建运行程序和 MSBuild 之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9276915/

相关文章:

c# - 未知服务器标签 'Taxonomy:TaxonomyFieldControl'

.net - Nuget 尝试在某些包上安装大量依赖项

c# - 复制/反射。发射静态数组

c++ - 在旧版 Visual Studio 中开发的链接库

visual-studio - 如何为 Excel 创建 GUI 插件?

visual-studio - 如何让 MSBuild 了解我的 tlog 文件中的读取依赖项?

c# - 数据表的条件和合并,同时将数据从一个替换为另一个

winforms - 在同一项目中创建由其他用户控件组成的用户控件时出现警告和错误(CS0436、CS0234)

command-line - 用于更改AssemblyName的项目级别而不是解决方案级别的Msbuild命令行参数

visual-studio-2015 - .NET 4.5.2 编译的应用程序需要 .NET 4.6