将配置设置从web.config移动到ServiceConfiguration.cscfg

Bla*_*gle 3 c asp.net azure

如果我将配置设置从我的Web.config移动到Aazure ServiceConfiguration.cscfg,我是否需要进行任何代码更改

例如,我在Web.config中有以下提到的条目

<ConfigurationSettings> <Setting name="webConfigHostName" value="Test.AzureTest" /> </ConfigurationSettings>

要阅读上面的条目,我使用

string myHostName=MyEnvironmentWrapper.GetConfigurationSettingValue("webConfigHostName");
Run Code Online (Sandbox Code Playgroud)

现在我想将我的Web应用程序移动到Azure云环境

所以我打算将上面的web.config条目移动到我的ServiceConfiguration.csfg 之后,我需要进行任何代码更改,以便我的应用程序可以直接从我的ServiceConfiguration.csfg读取"webConfigHostName"

Jer*_*Gee 8

我害怕(在过去,见下文)你做了:

if (RoleEnvironment.IsAvailable)
{
    return RoleEnvironment.GetConfigurationSettingValue("mySetting");
}
else
{
    return ConfigurationManager.AppSettings["mySetting"].ToString();
    // or whatever your configuration system requires
}
Run Code Online (Sandbox Code Playgroud)

这里这里有一些很棒的帖子.

我们最终编写了我们自己的包装器以使我们的应用程序不可知,所以在我们的代码中我们使用静态Configuration.GetValue().快速的全球搜索和替换,我们离开了.


编辑:今天这更容易:请参阅CloudConfigurationManager的MSDN参考.

  • Azure SDK中现在支持此功能(自2012年6月起):http://msdn.microsoft.com/en-us/LIBRARY/microsoft.windowsazure.cloudconfigurationmanager (3认同)