您可以执行以下三项操作之一: 1.在应用程序中使用**base page,并使应用程序中的所有页面都从其继承。在基页的page_load事件中,执行必须执行的操作。确保应用程序中的继承页面调用基页的page_load事件,如果它们是override page_load由于page_load被过度使用,我将给予相关的建议,看看all the page events(特别是page_prerender),以防另一个更合适。 1.使用在global.asax页面中触发的事件,每当接收到请求时都会发生。请查看Application_BeginRequest事件。但是,那里有一堆事件,所以如果另一个事件更适合您的情况,请使用check them all out。(就像常规页面事件一样,不要养成总是使用相同事件的坏习惯。) 1.您希望每次发生的事情都有可能进入master page**,特别是如果它与布局相关。母版页看起来很可爱,但在良好的设计中证明了自己。如果您使用母版页的page_load事件实现常见功能,则不必从每个内容页的page_load调用它;它在每次after the called-page的page_load事件时触发。(我提到这个是因为一开始很容易混淆母版页和基页。)
5条答案
按热度按时间bfrts1fy1#
您可以执行以下三项操作之一:
1.在应用程序中使用**base page,并使应用程序中的所有页面都从其继承。在基页的page_load事件中,执行必须执行的操作。确保应用程序中的继承页面调用基页的page_load事件,如果它们是override page_load由于page_load被过度使用,我将给予相关的建议,看看all the page events(特别是page_prerender),以防另一个更合适。
1.使用在global.asax页面中触发的事件,每当接收到请求时都会发生。请查看Application_BeginRequest事件。但是,那里有一堆事件,所以如果另一个事件更适合您的情况,请使用check them all out。(就像常规页面事件一样,不要养成总是使用相同事件的坏习惯。)
1.您希望每次发生的事情都有可能进入master page**,特别是如果它与布局相关。母版页看起来很可爱,但在良好的设计中证明了自己。如果您使用母版页的page_load事件实现常见功能,则不必从每个内容页的page_load调用它;它在每次after the called-page的page_load事件时触发。(我提到这个是因为一开始很容易混淆母版页和基页。)
eni9jsuy2#
您可以在
Global.asax
文件中使用BeginRequest事件。http://msdn.microsoft.com/en-us/library/system.web.httpapplication.beginrequest.aspx
hgncfbus3#
你也可以创建并注册一个HTTP Module,这样做的好处是它们在web.config中注册,所以你可以在运行时添加和删除它们,如果你想的话……并且有多个。
luaexgnf4#
您可以为您的页面创建一个公共基类,继承自System.Web.UI.Page,并将代码添加到OnLoad处理程序中。
f8rj6qna5#
您可以使用PageAdapters通过拦截ASP.NETPage生命周期的任何方法在每个aspx页请求上注入代码。
这篇文章可以帮助你理解它的工作原理:http://dotnet.org.za/hiltong/archive/2008/01/06/injecting-a-page-base-class-in-asp-net.aspx
问候。