我正在寻找一种方法来添加一些代码,以便在我的Web应用程序的所有页面上的所有Page_Load事件中执行,而无需在所有页面中编写它。 代码必须在页面上的Page_Load方法之前执行。 感谢您的关注。
答案 0 :(得分:7)
你可以创建一个Class让我们说BasePage.cs,在这里你将有一个虚拟方法Page_Load:
public class BasePage: System.Web.UI.Page
{
protected virtual void Page_Load(object sender, EventArgs e)
{
//Some logic here that you want to execute for all pages
}
}
然后,在要在PageLoad上执行此代码的每个页面中,使该页面继承自BasePage并覆盖PageLoad方法,如下所示:
文件somePage.aspx.cs中的执行此操作:
public partial class somePage : BasePage
{
protected override void Page_Load(object sender, EventArgs e)
{
base.Page_Load(sender, e); //This line will execute page load from BasePage class
//The rest of code you want to execute on this page load
}
}
答案 1 :(得分:0)
您可以创建母版页,将您希望代码执行的所有页面设置为母版页的“子元素”,然后将要执行的代码放在母版页的Page_Load事件中。< / p>
了解母版页的工作原理:http://msdn.microsoft.com/en-us/library/ie/wtxbf3hh.aspx