Я хочу загрузить большие файлы с помощью элемента управления FileUpload. Страница с этим элементом управления находится в папке администратора.
В папке администратора файл web.config я установлен:
<httpRuntime maxRequestLength="900000"/>
Но это не влияет!
Только если я установил эту строку в корневой web.config, она работает.
Почему?
Рассмотрите возможность использования раздела местоположения (в файле web.config, который находится в корне):
http://msdn.microsoft.com/en-us/library/b6x6shw7(VS.71).aspx
Местоположение - Путь: ресурс, к которому относятся указанные параметры конфигурации. Использование местоположения с отсутствующим атрибутом пути применяет параметры конфигурации к текущему каталогу и всем дочерним каталогам. Если используется без атрибута path и allowOverride указано как false, настройки конфигурации не могут быть изменены файлами Web.config в дочерних каталогах.
В следующем примере устанавливается ограничение на размер загруженного файла на 128 Кбайт только для указанной страницы.
<configuration>
<location path="UploadPage.aspx">
<httpRuntime maxRequestLength="128"/>
</location>
</configuration>
раздел httpRuntime - это уровень уровня приложения, поэтому он не привязан к страницам в папке, а ко всему приложению.
если вы установите область администратора как собственное приложение в IIS, этот параметр будет работать.
Если вы используете IIS7, добавьте дополнительное изменение сервера, которое необходимо сделать, чтобы разрешить загрузку большого файла на уровне сервера. Я написал сообщение с много информации о больших загрузках файлов в ASP.NET здесь.