Я смотрю на настройку IIS 7 Пределы запросов <requestLimits>, в частности maxAllowedContentLength, и мне было интересно, можно ли это применить на уровне ASP.NET Routing ?Я работаю в проекте ASP.NET MVC 3, который позволяет загружать файлы, но я хочу разрешить только большие запросы для этих конкретных маршрутов.
<requestLimits>
maxAllowedContentLength
Этот вопрос похож на неотвеченный Могу ли я увеличитьmaxRequestLength запроса ASP.NET для действия контроллера MVC с дополнительными параметрами?
Ответ на Где перехватить и обработать превышение maxAllowedContentLength в IIS7? , кажется, подразумевает, что я могу что-то сделатьвот так, но я искал подтверждение или другие идеи.
protected override void OnError(EventArgs e) { Exception err = Server.GetLastError(); if (err is HttpException) { if ((err as HttpException).WebEventCode == 3004) { // check to see if upload request and let through Server.Transfer( Context.Request.Url.LocalPath ); return; } } base.OnError(e); }
Вы можете поместить элемент <requestLimits> в тег <location> для (поддельного) виртуального каталога, соответствующего этому маршруту.
<location>
Я не знаю лучшего решения.