我想知道当你有开发/测试/生产类型时,在配置文件中访问设置 的最佳做法是什么。我从配置中访问设置的最佳做法是什么?
如果当你发布一个ASP.NET网站时你不同的配置为每种类型配置得到复制?
Malcolm
我想知道当你有开发/测试/生产类型时,在配置文件中访问设置 的最佳做法是什么。我从配置中访问设置的最佳做法是什么?
如果当你发布一个ASP.NET网站时你不同的配置为每种类型配置得到复制?
Malcolm
我们通常手动注入设置在每个站点上的文件。我认为,实际上依靠VS发布到您的制作网站并不罕见,尽管这并不是前所未有的。源代码管理有dev/test/prod /等web.config文件。
ConfigurationManager.AppSettings?
http://msdn.microsoft.com/en-us/library/system.configuration.configurationmanager.appsettings.aspx
在Visual Studio 2010中,您可以维护多个Web.Config并使用转换为环境生成正确的配置。
http://blogs.msdn.com/webdevtools/archive/2009/05/04/web-deployment-web-config-transformation.aspx
基本上,我们可以有一个默认的Web.Config和不同的转换文件例如每个环境
Web.Debug.Config Web.Staging.Config Web.Production.Config
转换文件可以覆盖一个特定的配置项目的值的环境例如
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<connectionStrings>
<add name="personalDB"
connectionString="Server=StagingBox; Database=personal; User Id=admin; password=StagingPersonalPassword"
providerName="System.Data.SqlClient" xdt:Transform="Replace" xdt:Locator="Match(name)" />
<add name="professionalDB"
connectionString="Server=StagingBox; Database=professional; User Id=professional; password=StagingProfessionalPassword"
providerName="System.Data.SqlClient" xdt:Transform="Replace" xdt:Locator="Match(name)"/>
</connectionStrings>
</configuration>
每当我们为该环境构建目标时,Transformation都应用于默认的Web.Config文件。