我有自己的PageHandlerFactory
派生类,只要用户访问页面就应该调用它。
当我不通过路由访问页面时,web.config
中的这行代码就可以了<httpHandlers>
<add verb="*" path="*.aspx" type="MyProject.Web.DependencyInjectionPageHandlerFactory, MyProject.Web" />
</httpHandlers>
但是当我通过路线访问某个页面时,例如
RouteTable.Routes.MapPageRoute("Login", "login", "~/Pages/Login.aspx");
未应用处理程序。我甚至通过在我的处理程序的构造函数中放置一个断点来测试它,当我通过路径访问页面时它没有被调用。由于我在我的项目中使用IoC / DI,我希望继续使用它将DI注入我的aspx页面,即使我正在使用路由。
我如何在web.config中管理它?或者至少在代码中。
编辑:我发现每次加载页面都会引发事件,无论如何。在Global.asax中它是
Application_PostRequestHandlerExecute
现在,我可以很容易地分辨出如何通过解析URL来调用它。有没有办法,如何在某些页面上应用我的PageHandlerFactory?