当我在本地运行时,我发现自己必须在web.config中手动更新我的DefaultConnection连接字符串。如何在本地运行时自动检测 - 当我在 - 时 - 覆盖默认连接字符串?
我有调试/发布转换工作,但这些是用于部署。我正在寻找一种方法来添加另一个选项 - “本地” - 如果有任何方法可以做到(或类似的东西)。
答案 0 :(得分:6)
您需要添加解决方案配置才能添加web.config转换。
设置你的项目配置,当你完成后,右键单击web.config,选择“添加转换”,你就可以了!
然后,当您想使用本地连接字符串时,只需使用此配置而不是调试。
答案 1 :(得分:2)
这取决于您的调试方式。如果您正在使用Cassini,那么无论选择的解决方案配置如何(例如,调试或发布),都将读取您的web.config内容。
如果使用本地IIS进行调试,则取决于您在IIS中设置路径的内容。如果已将其设置为源代码目录,则需要将本地设置写入web.config。如果将代码发布到本地目录并相应地设置IIS路径,则可以使用web.config转换。 (你说,你的web.config转换正在运行)
对于其他未来的读者:
我建议如下:在web.config中进行调试设置。使用“发布”设置(Web.Release.Config)创建解决方案配置,您可以将其用于发布过程。
使用VS 2010查看http://www.tomot.de/en-us/article/5/asp.net/how-to-use-web.config-transforms-to-replace-appsettings-and-connectionstrings有关web.config转换的分步教程。虽然VS 2012中的发布对话框已更改,但您应该能够将指南调整为较新版本。
答案 2 :(得分:0)
尝试按照本文所述创建web.config转换
http://blogs.msdn.com/b/webdev/archive/2009/05/04/web-deployment-web-config-transformation.aspx
我自己没有尝试过,但看起来很有希望。