项目文件Web.config保存了各类配置信息,一般咱们在<appSettings>标签下添加<add key="" value="">用于程序中读取这些配置信息,如AppKey、SecretKey和远程服务器地址等。服务器
通常状况下,咱们开发调试的时候用一套配置,发布的时候又要用到另外一套环境,或者还有预发布环境,甚至更多其余的环境配置。那么,怎么快速切换这些环境配置呢?app
方法一:spa
展开Web.config,下面有两个默认的配置文件,固然也能够本身再添加一些其余的配置。发布时选择某一套配置,会自动经过key值匹配,替换掉Web.config中的key值的value,具体替换语法再也不赘述,参见官方文档: http://go.microsoft.com/fwlin...
缺点:只在发布时比较方便。当生产环境出现bug时,须要将生产环境配置替换到本地程序中并调试,这时只能手动替换环境配置。调试
方法二:
直接将appSettings的配置文件剥离出Web.config文件,写入到新建的Dev.config文件中(.xml格式一样支持)code
<configuration> <appSettings configSource="config\Dev.config" /> </configuration>
在Dev.config中,写法也很简单:xml
<?xml version="1.0" encoding="utf-8" ?> <appSettings> <add key="AppKey" value="DEV@2018"/> <add key="AppSecret" value="volh332ldifjsk2"/> </appSettings>
缺点:在多套配置文件中可能存在相同的key值,一旦改动,须要在每一个配置文件中都改一下。blog
方法三:
这实际上是方法二的升级版,写法以下:ip
<configuration> <appSettings file="config/Dev.config"> <add key="AppID" value="APPID@2018DEV"> </appSettings> </configuration>
Dev.config的写法同方法二。
优势:在方法二的基础上,进一步提取出公共的key值,修改时只需在Web.config中修改一次便可。utf-8
总结:三个方法也是我依次走过的路,在尝试方法二的时候,mac版的VisualStudio中,使用congfigSource的同时也能够像方法三同样写法,可是搬到Windows平台上时就会报错,因此才另作尝试有了方法三。开发