放置在每次页面调用时自动执行的函数的最佳实践
Best practice to place a function which executes automatically on each page call
我有如下场景,
我有一个应用程序需要执行一个函数,该函数需要在每个页面的页面加载之前执行。即使我添加了一个新页面,该功能也需要在不将该功能复制到新页面的情况下执行。
请指导我将函数放置在应用程序中的最佳实践,以便它能像我所说的那样工作。
如果你的答案是母版页,那么母版页中哪个事件最适合写功能代码?
函数的过程是调用DALclass从数据库中获取数据,获取页面名称,需要根据页面名称进行一些登录。
感谢和问候
考虑使用自定义 HttpModule
http://msdn.microsoft.com/en-us/library/ms227673.aspx
或在 Global.asax 中,您可以在 Application_PreRequestHandlerExecute 中连接所需的事件:
void Application_PreRequestHandlerExecute(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
HttpContext context = application.Context;
if (context.Handler is Page)
{
Page page = (Page)context.Handler;
page.Load += ...
}
}
}
如果您使用的是 MVC,那么一种可能的方法是在 _Layout 页面中进行调用。
我有如下场景,
我有一个应用程序需要执行一个函数,该函数需要在每个页面的页面加载之前执行。即使我添加了一个新页面,该功能也需要在不将该功能复制到新页面的情况下执行。
请指导我将函数放置在应用程序中的最佳实践,以便它能像我所说的那样工作。
如果你的答案是母版页,那么母版页中哪个事件最适合写功能代码?
函数的过程是调用DALclass从数据库中获取数据,获取页面名称,需要根据页面名称进行一些登录。
感谢和问候
考虑使用自定义 HttpModule
http://msdn.microsoft.com/en-us/library/ms227673.aspx
或在 Global.asax 中,您可以在 Application_PreRequestHandlerExecute 中连接所需的事件:
void Application_PreRequestHandlerExecute(object sender, EventArgs e)
{
HttpApplication application = (HttpApplication)sender;
HttpContext context = application.Context;
if (context.Handler is Page)
{
Page page = (Page)context.Handler;
page.Load += ...
}
}
}
如果您使用的是 MVC,那么一种可能的方法是在 _Layout 页面中进行调用。