MVC 3 WebConfigurationManager.AppSettings[key] возвращает значение null

Может быть, это глупо, но кажется, что у mvc есть ошибка с web.configs.

Я поместил в Web.config (также я пытался поместить ключи в web.debug.config) несколько ключей appsettings Но

ConfigurationManager.AppSettings["key"]; 

также

WebConfigurationManager.AppSettings["key"];

возвращает ноль.

Я смотрел через отладчик в AppSettings.AllKeys - он видит правильные клавиши, но возвращает ноль.

В чем проблема с AppSettings в mvc?


person Artem Vertiy    schedule 13.10.2011    source источник


Ответы (4)


о, я нашел ошибку. Проблема была в именах ключей, ключи создавались с помощью копипаст и не заметно, когда у некоторых ключей есть пробел перед закрытием ", например key="HPPRequestUrl"

person Artem Vertiy    schedule 14.10.2011

Вот у кого похожие проблемы. возможно, это поможет проблеме appSettings и ConfigurationManager.AppSettings

person Kimpo    schedule 13.10.2011

Я смотрел через отладчик в AppSettings.AllKeys - он видит правильные клавиши, но возвращает ноль.

Возможно у вас кириллический символ "С" или опечатка в названии ключа. Попробуйте скопировать имя ключа из свойства AllKeys с помощью отладчика.

person Ivan Nikitin    schedule 13.10.2011
comment
нет все ключи имеют английские имена, нет кириллицы, у меня есть куча ключей и все из них менеджер конфигурации возвращает как нуль. - person Artem Vertiy; 14.10.2011

В вашем веб-конфиге должно быть что-то вроде этого:

<configuration>
 <appSettings>
  <add key="key" value="x" /> 
 </appSettings>
</configuration>

И затем вы можете получить свое значение, написав:

WebConfigurationManager.AppSettings["key"];
person Rikard    schedule 13.10.2011
comment
моя веб-конфигурация: <appSettings> <add key="HPPRequestUrl " value="https://esqa.moneris.com/HPPDP/index.php" /> ... </appSettings> Я получаю настройки приложения таким образом: FormAction = WebConfigurationManager.AppSettings["HPPRequestUrl"]; - person Artem Vertiy; 14.10.2011