2009-07-31 118 views
2

在我的VB.NET项目中,我有三种配置调试|测试|发布。从解决方案文件获取当前配置的MSbuild

目前,当我使用的MSBuild和TeamCity的我硬编码的配置,这气味不好!要自我测试

<Configuration Condition=" '$(Configuration)' == '' ">Test</Configuration> 

现在大家都在尖叫我之前没有硬编码这个建筑,这样做的原因是因为我们永远不会得到$(配置)填充。

所以我的问题是在MSBuild中如何从提交给SVN的解决方案文件中读取当前选定的配置?

回答

2

如果我没记错的话,你不能。当前选择的配置是用户设置,因此将其保存到.user或.suo文件中,而不是保存到解决方案文件中。检查用户设置文件到SVN会让其他开发者生气。

在TeamCity构建运行器配置中,您可以选择要构建的配置和目标。在命令行上构建时,您也可以提供这两者。那么为什么你需要将它们硬编码到一个项目文件中呢?

除此之外,我喜欢有一个测试目标而不是测试配置,因为它看起来更直观。但那可能只是我。

相关问题