leo*_*ora 43 c# asp.net-mvc global-asax
我从asp.net-mvc项目的global.aspx.cs中看到
protected void Application_BeginRequest()
{
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试将其添加到我的项目中时,我看不出是什么叫这个方法.我看到基础System.Web.HttpApplication有这个事件,但我没有看到任何覆盖它或订阅此事件.
有人可以解释你如何在asp.net-mvc中连接Application_BeginRequest?
Nic*_*cki 110
我担心Cos的答案不太准确.您不必连接它,因为基HttpApplication
类会为您完成.这里没有接口或覆盖; HttpApplication
使用反射将这些方法连接到基于方法名称的事件.所以这是基于会议的魔术,已经在框架中存在了一段时间.这很奇怪,我认为他们只是在当天与经典ASP保持相似之处和/或提供了避免编写大量小文章的捷径HttpModule
.
对于好奇,加载HttpApplication
Reflector并寻找HookupEventHandlersForApplicationAndModules()
方法.或者,加载HttpApplicationFactory
并查看ReflectOnApplicationType()
和ReflectOnMethodInfoIfItLooksLikeEventHandler()
(喜欢那个名字!)方法.
是否真的需要知道使用ASP.NET?不,但知道它肯定会消除一些神秘感.
归档时间: |
|
查看次数: |
53371 次 |
最近记录: |