routes.IgnoreRoute不工作?

时间:2013-04-14 07:04:50

标签: asp.net-mvc asp.net-mvc-3

我是MVC3的新手,刚开始学习它,今天是我的第一天,我使用默认的MVC3模板。我需要忽略对css文件的调用。请注意CSS文件放在根目录的Content文件夹中。

我尝试了什么?

            routes.RouteExistingFiles = true;
            routes.IgnoreRoute("{resource}.css/{*pathInfo}");
            routes.IgnoreRoute("{file}.css");
            routes.IgnoreRoute("Content/{*pathInfo}");

使用第一行代码,我逐个尝试了这3行代码,但它没有用。请指导。

由于

1 个答案:

答案 0 :(得分:0)

默认情况下,MVC不会路由对静态文件的请求。它就像非mvc asp.net一样创建了一个url路径。

除非你明确要求MVC提供它们。

您可以通过在web.config中添加以下内容来完成此操作:

<modules runAllManagedModulesForAllRequests="true">

这意味着每个请求,包括静态内容的请求都会进入管道。

将此设置更改为:

<modules runAllManagedModulesForAllRequests="false">

阻止这种情况发生。