在 .NET / SQLServer 应用程序中管理调试和发布连接字符串的好方法是什么?
我有两个 SQL Server,一个是生产服务器,一个是构建/调试服务器,我需要一种在部署 ASP.NET 应用程序时在这两个服务器之间进行切换的方法。
目前,我只是将它们存储在 web.config 中并将其中一个或另一个注释掉,但这在部署时很容易出错。
创建 Web.config 文件的调试和发布版本,例如Web.debug.config 和 Web.release.config。然后添加预编译条件,根据当前Target将相关版本复制到web.config中。
Edit:要添加预编译条件,请右键单击您的项目并选择“属性”,然后转到“构建事件”选项卡并将以下代码添加到预编译条件中。显然,您必须根据需要修改代码,请参见下图。
@echo off
echo Configuring web.config pre-build event ...
if exist "$(ProjectDir)web.config" del /F / Q "$(ProjectDir)web.config"
if "$(ConfigurationName)" == "Debug Test" goto test
if "$(ConfigurationName)" == "Debug M" goto M
if "$(ConfigurationName)" == "Debug BA" goto BA
if "$(ConfigurationName)" == "Release Test" goto test
if "$(ConfigurationName)" == "Release M" goto M
if "$(ConfigurationName)" == "Release BA" goto BA
echo No web.config found for configuration $(ConfigurationName). Abort batch.
exit -1
goto :end
:test
copy /Y "$(ProjectDir)web.config.test" "$(ProjectDir)web.config"
GOTO end
:BA
copy /Y "$(ProjectDir)web.config.BA" "$(ProjectDir)web.config"
GOTO end
:M
copy /Y "$(ProjectDir)web.config.M" "$(ProjectDir)web.config"
GOTO end
:end
echo Pre-build event finished
项目属性http://img442.imageshack.us/img442/1843/propsa.jpg http://img442.imageshack.us/img442/1843/propsa.jpg
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)