看了一些文章,通过写PageBase的页面并使其它page继承这个PageBase,可以方便地实现用户检验等需求。
后来发现子类page继承后,父类的PageLoad不执行了。
以下帖子提出了问题,但是没有提供正解:
http://bbs.csdn.net/topics/390482363?ticket=ST-704066-MoolZ4f7GW3lTwMCb6cK-passport.csdn.net
问题原因:
子类Page_Load覆盖了父类的Page_Load方法。
解决方法:
给子类方法前面加一个“new”,然后在子类方法里面这样写:
public partial class NewPage: Pagebase
{
protected new void Page_Load(object sender, EventArgs e)
{
//父类的Page_Load被覆盖了,因此要手动调用一下
base.Page_Load(sender, e);
}
}
这样父类和子类的PageLoad方法都会被调用,而且可以控制父类的PageLoad是否首先被调用,这样就可以优先检验用户的身份了。
时间: 2024-11-08 04:07:07