I:当建立Web项目后,默认生成的web.debug.config与Web.Release.config的作用介绍
1.为了更加清晰地介绍这个功能!我将会在下面建立一个空的Web应用程序项目去演示这一个功能的用意!所以接下来的第一步就是去建立好这个WEB应用程序项目.
首先我们打开VS2010,新建WEB应用程序项目.如下图
当我们建立好了一个空的Web项目后,在VS解决方案资源管理器里面将会看到非常干净的文件结构!
在这里大家看到~默认情况下相比Visual Studio 2008会多出两个文件,它们分别是:
Web.Debug.config及Web.Release.config
顾名思义,根据它们的命名我可以推测到他们分别用于在[调试]模式, 及[发行]模式下时的web.config替换工作!
II:为什么要使用web.config发布文件替换?它将会带来什么样的好处?
平常我们在开发的时候都是将数据库连接字符串设置为专用于开发的数据库服务器!而当我们把产品做好了以后,在发布的过程中往往需要把连接字符传由原来的用于开发的数据库改为生产数据库,在这里当版本在频繁地发布时,这个工作就需要重复好几次了!
另外当然你可以另写一个发布用的副本去替换掉开发时用的版本!而在这里我将会给大家介绍VS2010内置的web.config发布文件替换功能!
此功能相对灵活而且很弹性.
首先,你要了解的是程序的发布为什么会分[调试]模式,与[发行]模式!在选择[发行]模式时,代码会被内部作优化处理.从而使得文件相比[发布]模式之下体积更小,运行速度更快!因为少插入了一些调试符.
下面将会大家介绍怎样选择编译模式
右键解决方案 - 属性
好了,到这里我们已经学会如何设置编译版本了!下面将开始介绍web.config发布文件替换功能
III:使用web.config发布文件替换语法
好了,上了两节基础回顾!这儿应该真刀真枪回到主题了!
当你选择Debug编译模式发布时,自然而然IDE会去检测Web.Debug.config内的转换标记符
而在选择Release编译模式发布时,同理!
打开web.config
我们加好了连接字符串设置后,接下来我们建个测试页面
代码修改为
执行效果 (注意相对路径噢 test.ashx)
在这文章里我选择的是[Debug]编译模式!
然后我们修改web.Debug.config
从上图可以看到我使用了文件里默认导入的命名空间xdt.
修改了以后接下来进行发布
我这里选择的是文件系统,这种发布方式最后可以把发布出来的文件夹打包成.rar或者另外制作安装程序!
然后我们打开E:\Builder看最后的web.config生成情况
好了~在这里你已经知道如果替换连接字符串了~但是你可能会用到更复杂的功能~这里我提供一个MSDN的在线说明文档地址
http://msdn.microsoft.com/zh-cn/library/dd465326.aspx 介绍 XML-Document-Transform 的语法
注意: web.config发布替换的功能不能替换<configuration /> 楼主千辛辛万苦苦般地去进行尝试,最后还是以失败告终!
最后附上本文章的项目源代码!
以下的代码里面已经添加了一些文中没有的功能!有需要的朋友可以下载运行一次逐个了解
另外需要用到XPath语法的!原理也差不多
本文中的项目源代码 下载地址
最后谢谢各位观看本文的朋友们!