赞
踩
有时候我们开发与发布Web应用程序时Web.Config中的配置可能不一样,比如数据库连接字符串。那在发布时想自动替换Web.config文件的内容如何办呢?
解决方法:
1、展开Web.Config文件时,可以看到Web.Debug.Config与Web.Release.Config这两个文件
Web.Debug.Config是用来在Debug状态下用来替换Web.config文件中的内容。
Web.Release.Config是用来在Release状态下用来替换Web.Config文件的内容。
比如:Web.Config有如下数据库连接字符串
- <connectionStrings>
- <add name="ApplicationServices"
- connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
- providerName="System.Data.SqlClient"/>
- </connectionStrings>
在Web.Release.Config文件中添加如下代码:
- <?xml version="1.0"?>
-
- <!-- 有关使用 web.config 转换的详细信息,请访问 http://go.microsoft.com/fwlink/?LinkId=125889 -->
-
- <configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
- <connectionStrings>
- <add name="ApplicationServices"
- connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb2.mdf;User Instance=false"
- providerName="System.Data.SqlClient" xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
- </connectionStrings>
- </configuration>
注意文件中xdt:Transform和xdt:Locator
这样在发布Web项目应用程序时,就会替换Web.Config对应的数据库连接字符串
Transform与Locator的用户请参考
http://msdn.microsoft.com/zh-cn/library/dd465326(v=vs.100).aspx
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。