请假一个BasePage+MasterPage下重复调用OnPreInit事件的解决办法

tteagle 2013-08-18 04:51:54
程序是webform开发的,用到了母版页功能,每个页面都基于母版页,页面cs集成于了基类BasePage作为判断登录与否和权限管理。
BasePage里面用OnPreInits 事件来做权限管理。
protected override void OnPreInit(EventArgs )
{判断登录
权限管理
}

现在发现页面每次运行都调用了两次OnPreInit事件,一次是页面自身的调用,一次是MasterPage页面的调用,请问应该怎么解决这个问题?
...全文
184 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
tteagle 2013-08-21
  • 打赏
  • 举报
回复
去掉母版页算了,反正已经用了框架,结贴了:)
tteagle 2013-08-19
  • 打赏
  • 举报
回复
问题还没解决啊,或者请问在OnPreInit时能否分辨出是来自子页还是来自MasterPage呢? 再或者有什么事件是子页执行的,masterpage不会执行的么?
tteagle 2013-08-19
  • 打赏
  • 举报
回复
引用 7 楼 tcmakebest 的回复:
MasterPage 都没有 OnPreInit 的方法啊,楼主还是查查到底是哪里多调用了一次。 可以设个断点,然后打开【调用堆栈】窗口查看调用层次关系
谢谢回复。我在想是不是MasterPage也是继承UI.Page的,所以也会调用OnPreInit。 我把页面设置为不基于母版页,就不会调用两次。
tcmakebest 2013-08-19
  • 打赏
  • 举报
回复
MasterPage 都没有 OnPreInit 的方法啊,楼主还是查查到底是哪里多调用了一次。 可以设个断点,然后打开【调用堆栈】窗口查看调用层次关系
tteagle 2013-08-18
  • 打赏
  • 举报
回复
引用 3 楼 jshi123 的回复:
母版页的基类不应该是BasePage,可以另外写一个BaseMasterPage作为基类
母版页没有调用BasePage的,不过他还是去调用BasePage里的OnPreInit了
tteagle 2013-08-18
  • 打赏
  • 举报
回复
引用 2 楼 insus 的回复:
页面不必写了,直接在masterpage的Page_Load事件中写即可。
离大侠居然如此之近距离,感动啊。。。 是这样,我有的页面没有调用模板页。。。
jshi123 2013-08-18
  • 打赏
  • 举报
回复
母版页的基类不应该是BasePage,可以另外写一个BaseMasterPage作为基类
insus 2013-08-18
  • 打赏
  • 举报
回复
页面不必写了,直接在masterpage的Page_Load事件中写即可。
刘小吉 2013-08-18
  • 打赏
  • 举报
回复
把权限验证放到 子页面来重写OnPreInit

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧