2012-01-03 23 views
8

Azureのcscfgファイルからすべての構成設定(現在の役割またはすべての役割は関係ありません)を取得する必要があります。 RoleEnvironment.GetConfigurationSettingValue(key)メソッドですべての値を1つずつ取得したくないので、これを実行します。Azure設定ファイルからすべての設定を取得する方法は?

これを行う方法はありますか?

よろしく

+0

はあなたを行います現在実行中のアプリケーションでこれをしたいですか? –

答えて

2

短い答えは「いいえ」RoleEnvironmentは、すべてのコンフィギュレーションの設定値を取得してサポートしていません。

もう少し答えてください。現在の実装では、ロール環境からの設定をネイティブコードを呼び出すことで取得できます。 Windows AzureアプリケーションとWindows Azure設定を分離し、実行中のアプリケーションで設定を入れ替えることは、何とかこのルートにあります。これはmsshrtmi.dllの内部で行われます(これはMicrosoft Shared Runtime Managed Interopのようなものです)。これは、Microsoft.WindowsAzure.ServiceRuntime.dllが.NETへの標準参照とは別の唯一の参照です。 [MethodImpl(MethodImplOptions.Unmanaged、MethodCodeType = MethodCodeType.Native)、SuppressUnmanagedCodeSecurity、DLLIMPORT( ""、エントリーポイント=」

:ここ

はネイティブコードへのメソッド呼び出し(私はこれよりもさらに行っていない)であります"、CallingConvention = CallingConvention.StdCall、SetLastError = true)] 内部スタティックextern unsafe int modopt(IsLong)modopt(CallConvStdcall)RdGetApplicationConfigurationSetting(ushort modopt(IsConst)、ushort *);

1

これはややこしいことかもしれませんが、展開のすべてのロールの設定を取得する場合は、management apiを使用できます。

0

KuduにはAPIがあります。あなたが高度な詳細]> [設定APIの

https://{app-service-name}.scm.azurewebsites.net/ または https://{app-service-name}-{slot-name}.scm.azurewebsites.net/

URLを行く>アプリケーションサービスを経由してのようなクーズーを取得

は次のとおりです。

https://{app-service-name}.azurewebsites.net/api/settingsまたはhttps://{app-service-name}-{slot-name}.scm.azurewebsites.net/

関連する問題