Различия в поведении между System.Web.Configuration.WebConfigurationManager и System.Configuration.ConfigurationManager
У меня возникли проблемы на тестовом сервере с веб-сайтом ASP.NET. Я дурачился, и домашний каталог веб-сайта по умолчанию указывал на неправильное место. Когда я попробовал:
ConfigurationManager.ConnectionStrings["connectionString"];
он вернул ноль, но
using System.Web.Configuration;
/* ... */
var rootWebConfig =
WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);
rootWebConfig.ConnectionStrings.ConnectionStrings["connectionString"].ConnectionString;`
вернул правильную строку подключения.
Каковы все различия между этими двумя подходами?
РЕДАКТИРОВАТЬ: Что яя действительно спрашиваю, почемуConfigurationManager
сбой подхода, когда домашний каталог задан неправильно, но в противном случае это происходит успешно, иWebConfigurationManager
удается независимо от того, правильно ли установлен домашний каталог? Есть ли другие различия, такие как предположения об управлении доступом?