machine.config appSettings имеют значение null - PullRequest
8 голосов
/ 08 декабря 2011

В моем файле machine.config у меня есть следующее

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

Я пытаюсь получить его на странице asp с помощью

ConfigurationManager.AppSettings["key"];

, и он каждый раз возвращает ноль.

1 Ответ

21 голосов
/ 08 декабря 2011

Вы, вероятно, поместили его не в тот файл machine.config. Помните, что существует один и тот же machine.config для .NET 2.0 и 3.5, поскольку они оба предназначены для CLR 2.0 (c:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\) и отдельный machine.config для .NET 4.0 (c:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\).

Также помните, что если вы используете 64-битную ОС, папки будут c:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\ и c:\Windows\Microsoft.NET\Framework64\v4.0.30319\CONFIG\ соответственно. Поэтому убедитесь, что вы поместили ключ в правильный файл machine.config, соответствующий версии платформы, на которую вы ориентируетесь, в приложении ASP.NET, а также бит x86 или x64.

Таким образом, вы получаете machine.config для каждой версии CLR и bitness (не знаю, существует ли такое слово).

...