.NET не читает правильно web.config? - PullRequest
0 голосов
/ 25 марта 2012

у меня

   <system.web>
        <httpRuntime maxRequestLength="500000000"  />
    </system.web>

Но когда я читаю web.config через

 Configuration config = WebConfigurationManager.OpenWebConfiguration(configPath);

            HttpRuntimeSection section =
              (HttpRuntimeSection)config.GetSection("system.web/httpRuntime"); 

Я вижу 4096 значение для maxRequestLength !!

Как это могло быть ?? Спасибо за любую подсказку!

P.S. Это проект ASP .NET MVC3 Razor

Ответы [ 2 ]

1 голос
/ 25 марта 2012

Я предполагаю, что 500 000 000 КБ выше максимального значения для свойства maxRequestLength, поэтому ему присваивается значение по умолчанию (4 096).В документации не сказано, какое максимальное значение может принимать maxRequestLength, но я предполагаю, что 20,97,151 Кбайт это примерно равно 2 ^ 31 байту, максимальное значение, которое может хранить int.

1 голос
/ 25 марта 2012

Есть несколько вещей, которые следует учитывать:

  • Является ли ваш элемент прямым потомком элемента ?
  • Ваш файл web.config находится в корне корня области IIS Application Scope?
  • Не заблокирован ли элемент в "корневом" файле .config, поэтому значения не могут быть переопределены другими файлами конфигурации?

Если вы используете IIS, я рекомендую использовать Редактор конфигурации, чтобы выяснить приоритет конфигурации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...