asp.net-mvc – 静态文件请求正在ASP.NET MVC3中托管代码
创建自定义IHttpModules,我已经意识到静态文件(例如.css和.js文件)的请求正在被管理的模块.也许图片有同样的问题.不应该IIS绕过文件系统中存在的文件的ASP.NET?
例如: public class MyModule:IHttpModule { public void Dispose(){ } public void Init(HttpApplication context) { context.BeginRequest += (o,e) => Debug.Print("Request: " + HttpContext.Current.Request.RawUrl); } } 我以这种方式宣布: <modules runAllManagedModulesForAllRequests="true"> <add name="MyModule" preCondition="managedHandler" type="MVCX.Modules.MyModule,MVCX"/> </modules> 但是,即使使用前提条件,我可以看到静态文件如何通过模块: Request: /MVCX/ Request: /MVCX/Content/Site.css Request: /MVCX/Scripts/jquery-1.4.4.min.js 我试图忽略静态文件的规则,但没有什么区别: routes.IgnoreRoute("{Content}/{*pathInfo}"); routes.IgnoreRoute("{Scripts}/{*pathInfo}"); 这是平常吗?还是我在这里遗漏的东西?据我所知,如果静态文件请求应该由IIS应答.如果我的受管模块被击中,意味着CLR ThreadPool线程正在处理该请求,对吧? 问候. 更新: 我已经禁用了“runAllManagedModulesForAllRequests”: <modules runAllManagedModulesForAllRequests="false"> <add name="MyModule" preCondition="managedHandler" type="MVCX.Modules.MyModule,MVCX" /> </modules> 并且一切似乎工作正常,但我发现这篇文章:http://www.britishdeveloper.co.uk/2010/06/dont-use-modules-runallmanagedmodulesfo.html建议删除和读取“UrlRoutingModule-4.0”模块与一个空的前提条件. 我的机器,该模块的添加在根web.config,它已经有一个空的preCondition: C:WindowsMicrosoft.NETFramework64v4.0.30319Config>type machine.config | find "UrlRouting" C:WindowsMicrosoft.NETFramework64v4.0.30319Config>type web.config | find "UrlRouting" <add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" /> C:WindowsMicrosoft.NETFramework64v4.0.30319Config> 所以现在我有点困惑,这个参数的状态是什么?我应该使用还是不应该?为什么默认情况下为“真”? 问候. 解决方法
完善.这意味着这个模块将始终运行,这是MVC需要的,因为它使用可扩展的URL.
因为IIS7 SP1和IIS7.5 SP1中的扩展名url支持是新的. 为什么这个参数默认为true?因为VS2010是在IIS7 SP1之前发货的.也许在VS2010SP1的新MVC项目中是虚假的? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- ap.net发布资源文件不能被编译
- asp.net – 如何使用PowerShell了解IIS中托管的特定网站的活
- asp.net-mvc-4 – 无法解析类型名称:Glass.Mapper.Sc.Pipe
- asp.net-mvc – 如何将默认值显示为空白而不是类型的默认值
- asp.net-mvc – 如何在RouteTable MVC.Net中手动查找路由?
- asp.net-mvc – 没有ViewContext的Url表单操作
- asp.net核心 – ASP.NET核心MVC查看组件
- Asp.Net MVC EnableClientValidation不起作用
- asp.net – 从umbraco搜索中排除节点
- asp.net-mvc – ASP.NET MVC 5 Web应用程序性能低下
- asp.net-mvc – 如何从ASP.NET MVC VIEWS文件夹访
- asp.net – GridView BoundField打破长字符串
- asp.net-mvc – 应该使用多个或单个MVC包吗?
- IIS 7/ASP.Net管道如何工作?
- 什么时候用ASP.NET MVC来淘汰JavaScript
- asp.net – 通过Button控制Fire AsyncFileUpload
- ASP.Net错误:“类型”foo“存在于”temp1.dll“
- asp.net-mvc – 导出Excel文件以查看(MVC)
- asp.net-mvc – ASP.NET MVC:多视图文件夹和_Vi
- asp.net – 长时间运行HttpWebRequests