は親切に説明しています。また、このCloudConfigurationManagerはどのように機能しますか?
AFAIK、Microsoft.WindowsAzure.ConfigurationManagerは単なるスタンドアロンのライブラリであり、依存関係はありません。
Microsoft Azure Configuration Managerは、オンプレミスでもクラウドサービスでも、アプリケーションがホストされている場所に関係なく構成設定を読み込むための統合APIを提供します。
CloudConfigurationManager.GetSetting
は、適切な構成ストアから構成設定を読み込みます。アプリケーションが.NET Webアプリケーションとして実行されている場合、GetSetting
メソッドは、Web.config
またはapp.config
ファイルから設定値を取得します。アプリケーションがWindows AzureクラウドサービスまたはWindows Azure Webサイトで実行されている間に、GetSetting
はServiceConfiguration.cscfg
から設定値を取得します。
使用ILSpy、我々はGetSetting
方法が設定値を取得するために、まずServiceRuntimeプロバイダをチェックして、レバレッジRoleEnvironment.GetConfigurationSettingValue(string configurationSettingName)でしょう見つけることができます。値がnull
の場合、ConfigurationManagerプロバイダを使用し、ConfigurationManager.AppSettings['<settingName>'];
を利用します。
internal string GetSetting(string name, bool outputResultsToTrace)
{
string value = AzureApplicationSettings.GetValue("ServiceRuntime", name, new Func<string, string>(this.GetServiceRuntimeSetting), outputResultsToTrace);
if (value == null)
{
string arg_44_0 = "ConfigurationManager";
Func<string, string> arg_44_2;
if ((arg_44_2 = AzureApplicationSettings.<>c.<>9__10_0) == null)
{
arg_44_2 = (AzureApplicationSettings.<>c.<>9__10_0 = new Func<string, string>(AzureApplicationSettings.<>c.<>9.<GetSetting>b__10_0));
}
value = AzureApplicationSettings.GetValue(arg_44_0, name, arg_44_2, outputResultsToTrace);
}
return value;
}
あなたapp.config
ファイルの設定を構成し、そしてGetSetting
方法は、デフォルトでトレースするためにログインし、あなたが提供され、あなたはトレースログを見ること書きますので。さらに、GetSetting('<settingName>',false)
を使用してトレースログを無効にすることもできます。
サービス構成ファイル(* .cscfg)に 'StorageConnectionString'が定義されていますか? –
これは私のapp.configファイルにありません。実際に私は青空に新しいですし、それを理解しようとしています。 –
サービス設定ファイルでこの設定を定義してください。私が間違っていないと、ロール環境はそこからそれを取り上げます。 –