日期:2014-05-17  浏览次数:20421 次

请假一个BasePage+MasterPage下重复调用OnPreInit事件的解决办法
程序是webform开发的,用到了母版页功能,每个页面都基于母版页,页面cs集成于了基类BasePage作为判断登录与否和权限管理。
BasePage里面用OnPreInits 事件来做权限管理。
protected override void OnPreInit(EventArgs )
        {判断登录
权限管理
}

现在发现页面每次运行都调用了两次OnPreInit事件,一次是页面自身的调用,一次是MasterPage页面的调用,请问应该怎么解决这个问题?
OnPreInit MasterPage BasePage 重复调用

------解决方案--------------------
把权限验证放到 子页面来重写OnPreInit
------解决方案--------------------
页面不必写了,直接在masterpage的Page_Load事件中写即可。
------解决方案--------------------
母版页的基类不应该是BasePage,可以另外写一个BaseMasterPage作为基类
------解决方案--------------------
MasterPage 都没有 OnPreInit 的方法啊,楼主还是查查到底是哪里多调用了一次。
可以设个断点,然后打开【调用堆栈】窗口查看调用层次关系