我将SlowCheetah作为我的TeamCity构建过程的一部分来转换app.config文件。
我知道在Web应用程序的情况下,在本地Visual Studio调试器中运行应用程序不会转换相关的web.config。我认为app.config文件的行为是相同的,但我今天才发现,当我从本地VS 2012运行控制台或Windows服务应用程序时(例如在调试器中),app.config会被转换。
有没有办法阻止在调试器中运行非WAP项目时发生app.config转换?
答案 0 :(得分:3)
有一种简单的方法可以做到这一点。
在编辑器中打开项目的csproj文件(例如Windows Service项目)(可以在VS Solution Explorer中右键单击| Unload Project,然后在“编辑项目文件”中编辑Visual Studio中的文件内容)
查找包含以下内容的行:
<Import Project="$(SlowCheetahTargets)" Condition="Exists('$(SlowCheetahTargets)')" Label="SlowCheetah" />
并按如下方式修改:
<Import Project="$(SlowCheetahTargets)" Condition="Exists('$(SlowCheetahTargets)')and '$(IsDesktopBuild)' == 'false'" Label="SlowCheetah" />
当您在本地计算机上时,这将禁用转换,但它们将继续在Build Server中转换。