2012-07-18 2 views
12

분명히 Microsoft.WindowsAzure.CloudConfigurationManager.GetSettings은 ServiceConfiguration. *. cscfg를보고 시작하여 web.config 및 app.config로 돌아갑니다.Azure 구성 설정 및 Microsoft.WindowsAzure.CloudConfigurationManager

하지만이 형식은 web/app .config에서 어떤 형식이어야합니까?

예. Microsoft.WindowsAzure.CloudConfigurationManager.GetSettings("Foo")을 app.config에서 가져 오려면 XML의 모양은 무엇입니까?

+0

제공 한 msdn 링크에서 "appSettings 태그 내의 구성 설정 만 r 일 수 있습니다. CloudConfigurationManager에 의해 ead됩니다. 구성 설정이 다른 태그 안에 있으면 "GetSetting"을 호출하면 Null이 반환됩니다. " –

답변

13

그냥 appSettings key/value이됩니다.

<configuration> 
    <appSettings> 
    <add key="Foo" value="AzureSetting"/> 
    </appSettings> 
</configuration> 
+0

내가 생각하기에 문제가 있지만 작동하지 않습니다 .Dir Azure CloudConfigManager를 사용하고 있습니까? (조사하기 전에 확인) – Ryan

+1

Hmmm - ConfigurationManager.AppSettings가 작동하지 않습니다. 분명히 뭔가 다른 것입니다 - 감사합니다! – Ryan

+1

실제로 삭제 된 bin 디렉토리 (clean은 작동하지 않았습니다)와 이제는 모두 괜찮습니다 ... – Ryan

1

당신은 ServiceDefinition.csdef 및 ServiceConfiguration.cscfg

전에 설정을 추가해야합니다 ServiceDefinition.csdef

<?xml version="1.0" encoding="utf-8"?> 
<ServiceDefinition name="WindowsAzure1" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-05.1.7"> 
    <WebRole name="WebRole1" vmsize="Small"> 
     <ConfigurationSettings> 
      <Setting name="Foo"/> 
     </ConfigurationSettings> 
     : 
    </WebRole> 
</ServiceDefinition> 

예 : ServiceConfiguration.cscfg

<?xml version="1.0" encoding="utf-8"?> 
<ServiceConfiguration serviceName="WindowsAzure1" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="1" osVersion="*" schemaVersion="2012-05.1.7"> 
    <Role name="WebRole1"> 
    <Instances count="1" /> 
    <ConfigurationSettings> 
     <Setting name="Foo" value="val"/> 
    </ConfigurationSettings> 
    </Role> 
</ServiceConfiguration> 
+0

msdn [link] (https://msdn.microsoft.com/en-us/LIBRARY/microsoft.windowsazure.cloudconfigurationmanager)). "Windows Azure 이외의 환경에서 실행되는 .NET 응용 프로그램은 일반적으로 구성 설정을 web.config 또는 app.config 파일에 저장합니다. CloudConfigurationManager 클래스를 사용하면 코드가 실행되는 환경에 관계없이 적절한 구성 파일에서 읽을 수 있습니다. " –