Это немного старая тема, но я подумал, что должен добавить свой опыт с этим.
Я столкнулся с той же проблемой при загрузке больших файлов и веб-API.404.13 выбрасывается до того, как он вообще попадает в контроллер, поэтому мне пришлось выяснить, куда перейти и обработать этот случай.
Моим решением были следующие записи web.config:
Я обрабатываю 404.13, перенаправляя его на контроллер mvc (это может быть и страница веб-формы), и обычные ошибки 404 попадают в мой маршрут 404.очень важно, чтобы responseMode = "redirect" для 404.13
<httpErrors errorMode="Custom">
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" subStatusCode="13" path="/errors/filesize" responseMode="Redirect" />
<error statusCode="404" path="/errors/notfound" responseMode="ExecuteURL" />
</httpErrors>
Затем, в моем контроллере ошибок, у меня есть следующее:
public ActionResult FileSize()
{
Response.StatusCode = 500;
Response.StatusDescription = "Maximum file size exceeded.";
Response.End();
return null;
}
Опять же, это может быть обычная веб-формастр.