我开发了一个包含50页&现在我想在每个page_load上调用一个方法。所以,有什么方法可以将我的方法附加到现有的类Event。因此,只要该事件被引发,我的方法就会被调用。
示例:我可以将mymethd()附加到页面类的page_load事件,因此每当加载任何页面时,我的mymethod()都会被调用。我不想继承页面类。
答案 0 :(得分:3)
您是否使用“主”页面构建了自己的网站?并从主人那里导出你的每一页?这肯定会让事情变得更容易......
然后,将方法添加到外部“主”页面,在ITs加载事件期间,自动实例化对“事件”的调用。
答案 1 :(得分:1)
如果您不想使用继承(顺便说一下:为什么?)并且您没有母版页,我可以建议使用custom HTTP Module 它不会附加到page_load,但它允许您在每次请求页面时调用您的方法。
答案 2 :(得分:0)
我不知道您对使用继承的反对意见 - 它只涉及进行查找/替换。
E.g。如果您的所有页面都从公共基页类继承。
public class TuscanoBasePage: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e){
Response.Write ("<h1>This is a base page method</h1>");
}
}
然后你从实际页面中的这个基页继承:
public partial class Default : TuscanoBasePage
{
protected void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e);
Response.Write("<h2>This is coming from the page that inherits from TuscanoBasePage!</h2>");
}
}