CloudConfigurationManager vs WebConfigurationManager?

Azure Web Sitelerinde, yapılandırmanın uygulama ayarlarından bazı değerler almak için her zaman aşağıdaki kodu kullanıyordum:

string property = WebConfigurationManager.AppSettings["property"];  

Sadece birkaç gün önce CloudConfigurationManager'a inanıyorum ve onunla şöyle bir özellik elde edebiliyorum:

string property = CloudConfigurationManager.GetSetting("property"); 

CloudConfigurationManager bulut kullanımına daha uygun gibi görünse de, WebConfigurationManager ile hiçbir zaman sorun yaşamadım.

  • CloudConfigurationManager kullanmalı mıyım?
  • İkisi arasındaki farklar nelerdir?
  • CloudConfigurationManager hangi durumlarda farklı davranır?
    WebConfigurationManager?
13

8 cevap

CloudConfigurationManager enables us to read configuration file regardless of the environment we are in.

Dolayısıyla, ortama özel kod ifadeleri yazmak yerine, örneğin, web.config dosyası için:

WebConfigurationManager.AppSettings [ "MySetting"]

ServiceConfiguration.cscfg dosyası için:

RoleEnvironment.GetConfigurationSettingValue ( "MySetting")

Tüm yapılandırma dosyalarındaki, yani app.config, web.config ve ServiceConfiguration.cscfg değerlerini okuyacak olan aşağıdaki ifadeyi yazabiliriz.

CloudConfigurationManager.GetSetting ( "MySetting")

16
katma

CloudConfigurationManager enables us to read configuration file regardless of the environment we are in.

Dolayısıyla, ortama özel kod ifadeleri yazmak yerine, örneğin, web.config dosyası için:

WebConfigurationManager.AppSettings [ "MySetting"]

ServiceConfiguration.cscfg dosyası için:

RoleEnvironment.GetConfigurationSettingValue ( "MySetting")

Tüm yapılandırma dosyalarındaki, yani app.config, web.config ve ServiceConfiguration.cscfg değerlerini okuyacak olan aşağıdaki ifadeyi yazabiliriz.

CloudConfigurationManager.GetSetting ( "MySetting")

16
katma

I think you're better off using WebConfigurationManager. With it, you have access to ConnectionStrings as well as AppSettings. Both sets of settings you can update via the Azure Portal. They can then further be used in other Azure facilities/services, such as when configuring website backup. Check this out for more information: https://azure.microsoft.com/en-us/blog/windows-azure-web-sites-how-application-strings-and-connection-strings-work/

1
katma

I think you're better off using WebConfigurationManager. With it, you have access to ConnectionStrings as well as AppSettings. Both sets of settings you can update via the Azure Portal. They can then further be used in other Azure facilities/services, such as when configuring website backup. Check this out for more information: https://azure.microsoft.com/en-us/blog/windows-azure-web-sites-how-application-strings-and-connection-strings-work/

1
katma

CloudConfigurationManager requires Microsoft.WindowsAzure.Configuration assembly, part of Azure SDK or separate NuGet.

WebConfigurationManager requires System.Web.Configuration assembly, part of .NET Framework.

1
katma

CloudConfigurationManager requires Microsoft.WindowsAzure.Configuration assembly, part of Azure SDK or separate NuGet.

WebConfigurationManager requires System.Web.Configuration assembly, part of .NET Framework.

1
katma

WebConfigurationManager and CloudConfigurationManager manage different configuration files.

WebConfigurationManager is for managing website's web.config file(s) and it's appsettings and connections strings

CloudConfigurationManager is for managing .cscfg files (for cloud services). His benefit is that you can manage configurations and connections from the azure portal directly.

1
katma
Ancak CloudConfigurationManager gayet iyi çalışıyor ve WebConfigurationManager işini dozluyor - Benim sorumdaki kod çalışıyor.
katma yazar Yaron Levi, kaynak
Evet, msdn 'e göre de çalışıyor , biraz "bonus" mantığı. Bu nedenle, yalnızca Azure kullanmayı planlıyorsanız, onu hem web.config hem de cscfg ayarları için kullanabilirsiniz, ancak Azure'dan geçmek istiyorsanız, onu değiştirmeniz gerekir.
katma yazar Lanayx, kaynak

WebConfigurationManager and CloudConfigurationManager manage different configuration files.

WebConfigurationManager is for managing website's web.config file(s) and it's appsettings and connections strings

CloudConfigurationManager is for managing .cscfg files (for cloud services). His benefit is that you can manage configurations and connections from the azure portal directly.

1
katma
Ancak CloudConfigurationManager gayet iyi çalışıyor ve WebConfigurationManager işini dozluyor - Benim sorumdaki kod çalışıyor.
katma yazar Yaron Levi, kaynak
Evet, msdn 'e göre de çalışıyor , biraz "bonus" mantığı. Bu nedenle, yalnızca Azure kullanmayı planlıyorsanız, onu hem web.config hem de cscfg ayarları için kullanabilirsiniz, ancak Azure'dan geçmek istiyorsanız, onu değiştirmeniz gerekir.
katma yazar Lanayx, kaynak