我通过nuget安装了SlowCheetah软件包,并为我的web.config添加了基于Build config的转换文件 . 但是,在构建时,web.config不会被转换 . 我检查了我的项目文件,确实看到了SlowCheetah PropertyGroup和Import元素的条目 . 我没有在项目文件中看到转换目标 . 如果我添加app.config,app.config文件确实会被转换 . 我的理解是,安装SlowCheetah软件包应该自动将web.config转换目标添加到项目的MSBuild文件中 . 我可以手动添加它,但我认为SlowCheetah开箱即用 . 我错过了什么 . 请告诉我 . 我的要求是我的web.config文件应该根据构建配置进行转换,转换后的web.config文件应该位于输出目录中 . 谢谢,感谢所有的帮助 .
3 回答
只有在使用发布功能部署项目时,Visual Studio才会进行转换 . 要在进行构建时执行此操作,您需要调整MSBuild脚本 . 完整的解决方案是here . 这里的要领:
为了详细说明Philipp的答案,我发现了一个可能更简单的解决方案:不需要Web.Base.Config,并且没有覆盖web.config的问题,这会导致Source Control出现问题 .
您是否将转换文件的“复制到输出目录”属性设置为“不复制”?请检查您的项目文件 .
在项目文件中,应添加以下条目(取决于您安装的版本,在本例中为2.5.7):