ASP.NET路由 - 忽略具有特定扩展名的文件的路由,无论目录如何

max*_*axp 12 c# asp.net asp.net-mvc routing

假设我想删除具有特定文件扩展名的文件的任何映射路由.

 RouteTable.Routes.Ignore("{root}.hello");
Run Code Online (Sandbox Code Playgroud)

适用.hello于在根目录中具有扩展名的任何文件,但是只要我进入任何子文件夹,就不会应用"忽略"规则.

我已经尝试了很多不同的组合,但似乎无法得到一个不会抛出编译器异常,或无法工作?

Tom*_*mmy 15

查看Phil的博客.基本上,你会做这样的事情:

示例1:不要对所有.aspx文件的任何请求执行路由:

routes.IgnoreRoute("{*allaspx}", new {allaspx=@".*\.aspx(/.*)?"});
Run Code Online (Sandbox Code Playgroud)

示例2:不要对favicon.ico的任何请求执行路由

routes.IgnoreRoute("{*favicon}", new {favicon=@"(.*/)?favicon.ico(/.*)?"});
Run Code Online (Sandbox Code Playgroud)