ASP.NET MVC如何连接到ASP.NET?
|
我试图更好地了解ASP.NET和ASP.NET MVC背后的“ plumbing”.我一直在阅读 this page,这帮助了很多.从我迄今为止所了解的每个ASP.NET网站都有一个继承自System.Web.HttpApplication的类.然后HttpApplication会有一系列触发HttpModules和HttpHandler的事件,如BeginRequest,AuthorizeRequest,End Request等等.然后HttpModules和HttpHandlers会从当前的HttpContext读取和写入. ASP.NET如何知道使用什么HttpApplication类?我的应用程序在Global.asax文件中具有典型的MvcApplication类.但是我在这个类中没有看到有关MVC的内容.在任何将此类分配为“应用程序”的地方,我也看不到任何设置. ASP.NET只是总是寻找一个名为Global.asax的文件来弄清楚要创建的HttpApplication类?或者ASP.NET只是在我的程序集中寻找继承自HttpApplication的任何类? 另外,它如何知道要使用的模块和处理程序?我上面提到的页面指出了web.config中的处理程序和模块以及设置.但是我的ASP.NET MVC应用程序在其web.config中没有这些设置? 如果我在我的一个动作方法中设置了一个断点,并检查HttpContext.Current.ApplicationInstance.Modules,我看到以下内容: OutputCache Session WindowsAuthentication FormsAuthentication PassportAuthentication RoleManager UrlAuthorization FileAuthorization AnonymousIdentification Profile ErrorHandlerModule ServiceModel UrlRoutingModule-4.0 ScriptModule-4.0 __DynamicModule_System.Web.WebPages.WebPageHttpModuleDefaultAuthentication 这些指定在哪里?同样,如果我检查HttpContext.Current.Handler我可以看到它设置为System.Web.Mvc.MvcHandler. 解决方法当第一个用户访问您的网站时:1)它加载由应用程序承载的所有web.config所指定的所有Http模块. 2)如果系统启用了ASP.NET MVC,则global web.config会将 现在,您在global.asax(如标准MvcApplication)中从HttpApplication派生的类被编译到dll中.铭记这一点… 5)ASP.NET运行时扫描YourApplication.dll以获取源自HttpApplication的类,并执行其许多方法(例如Application_Start). 6)当使用惯用的ASP.NET MVC MapRoute扩展方法创建路由时,它将该路由与 7)UrlRoutingModule(从步骤2)使用routing handler来选择ASP.NET将用于处理该路由上的传入请求的http处理程序. 你可以找到the full story here. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 将asp.net应用程序移植到天蓝色有多大挑战?
- asp.net – 间歇性SQL连接错误
- asp.net-mvc – AJAX在IIS 7.5中返回404(本地),但在其他IIS
- asp.net-mvc-4 – AngularJs,DropZone.Js,MVC4 – 拖放,预览
- asp.net-mvc – Asp.net MVC和普通的html页面
- asp.net – 如何在selectindexchanged下拉列表后避免页面刷
- asp.net-mvc – Cookie不会被删除
- asp.net-mvc – 获取Controller.OnException中的Action和Ac
- .net – WebApi传输字节数组为空
- asp.net – HTTP错误500.23之后添加到我的本地网站dotless
- ASP.NET Core中调整HTTP请求大小的几种方法详解
- asp.net-mvc – 在服务器上安装ASP.NET MVC 4
- asp.net-mvc – mvc中的多个内容占位符?
- asp.net-mvc – 通用列表属性的必需属性
- asp.net – .net中的Ajax响应数据
- asp.net-mvc – 为什么必须将LESS文件设置为Buil
- asp.net – 如何在web.config中读取会话状态信息
- asp.net-mvc – 如何将变量传递给ASP.NET MVC应用
- asp.net-mvc – 从ASP MVC 3 Preview 1升级到bet
- asp.net-mvc – 使用ASP.NET MVC 3.0进行日期验证
