2012-07-18 23 views
12

Microsoft.WindowsAzure.CloudConfigurationManager.GetSettings Görünen Microsoft.WindowsAzure.CloudConfigurationManager.GetSettings ServiceConfiguration. *. Cscfg'ye bakılarak başlayacak ve web.config ve app.config dosyasına geri dönecektir.Azure yapılandırma ayarları ve Microsoft.WindowsAzure.CloudConfigurationManager

Ancak - bu, web/app .config dosyasında hangi biçime sahip olmalıdır?

E.g. app.config'tan almak için Microsoft.WindowsAzure.CloudConfigurationManager.GetSettings("Foo") almak nasıl XML nasıl görünebilir?

+0

Sağladığınız msdn bağlantısından: "Yalnızca appSettings etiketindeki yapılandırma ayarları r olabilir CloudConfigurationManager tarafından ead. Yapılandırma ayarlarınız farklı bir etiket içinde bulunuyorsa, GetSetting'i çağırmak Null değerini döndürür. " –

cevap

13

Sadece appSettings key/value olacaktır.

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

Ne düşündüğüm ama benim için işe yaramadı. AZURE CloudConfigManager ile emin misiniz? (Sadece kazmaya başlamadan önce kontrol et) – Ryan

+1

Hmmm - ConfigurationManager.AppSettings ya da başka bir şey yanlış ya çalışmıyor - Teşekkürler! – Ryan

+1

Gerçekten silindi dir (temiz işe yaramadı) ve şimdi tüm iyi. Harumf ... – Ryan

1

Sen ServiceDefinition.csdef ve ServiceConfiguration.cscfg

ex ayarları eklemek gerekir: 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> 

örn: 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

Bunu yapmanıza gerek yok. msdn'den [link] (https://msdn.microsoft.com/en-us/LIBRARY/microsoft.windowsazure.cloudconfigurationmanager) sorusunda: "Windows Azure dışındaki bir ortamda çalışan bir .NET uygulaması, genellikle yapılandırma ayarlarını bir web.config veya app.config dosyasında depolar. CloudConfigurationManager sınıfı, kodunuzun çalıştığı ortamdan bağımsız olarak uygun yapılandırma dosyasından okumanızı sağlar. " –