В моем приложении MVC я хочу, чтобы поведение, как было ранее указано в <httpHandlers>
в web.config, а именно, что если я регистрирую такой обработчик, как это:
<system.webServer>
<handlers>
<add name="processData" verb="POST" path="processData" type="RightType, RightAssembly"/>
</handlers>
</system.webServer>
, тогда все запросы к /processData
глаголы, отличные от «POST», приводят к HTTP 404.
Я пытался зарегистрировать маршрут следующим образом:
routes.MapRoute(
@"ProcessData", @"processData",
new { controller = @"Api", action = @"ProcessData" },
new { httpMethod = new HttpMethodConstraint( "POST" ) } );
и теперь, когда в запросе есть глагол, отличный от POST, маршрут нене совпадает, разрешение маршрута падает и переходит на страницу по умолчанию.
Как заставить MVC выдавать сообщение об ошибке HTTP (код 404 или что-то в этом роде), если путь совпадает, но глагол не совпадает?