Скажите, что я хочу удалить любые отображенные маршруты для файлов с определенным расширением файла.
RouteTable.Routes.Ignore("{root}.hello");
Работы для любого файла, который имеет расширение .hello
в корневом каталоге однако как только я вхожу в любые подпапки, не применяется 'проигнорировать' правило.
Я попробовал много различных комбинаций, но, может казаться, не получаю ту, которая не выдает исключение компилятора или не работу?
Прочтите об этом блог Фила . По сути, вы должны сделать что-то вроде этого:
Пример 1: Не выполнять маршрутизацию для любого запроса для всех файлов .aspx:
routes.IgnoreRoute("{*allaspx}", new {allaspx=@".*\.aspx(/.*)?"});
Пример 2: Не выполнять маршрутизацию для любого запроса для favicon.ico
routes.IgnoreRoute("{*favicon}", new {favicon=@"(.*/)?favicon.ico(/.*)?"});
Если вы используете ASP.NET MVC, используйте IgnoreRoutes (метод расширения MVC)
Routes.IgnoreRoute("{*foo*}", new { foo = @"someregextoignorewhatyouwant"});
Если вы используете веб-формы ASP.NET, используйте StopRoutingHandler , который реализует IRouteHandler .
routes.Add(new Route("*someregextoignorewhatyouwant*", new StopRoutingHandler()));