ASP.NET Page_Init被触发了两次!

5
我在代码后端中设置了AutoEventWireup="true"。
protected void Page_Init(object sender, EventArgs e)
{


}

当我调试时,Page_Init方法会被触发两次!发生了什么?

1
请发布整个代码后台文件。 - JoshJordan
3个回答

7

让我们确保在这里涵盖基础知识:

你的页面上是否有任何具有服务器事件的控件?如果是,记住每次 postback 都会重新创建整个页面。因此,处理事件意味着运行所有必需的代码来组合页面,包括 Init 和 Load 事件。

总是有两个,不多也不少。一个请求和一个响应。


3
你可能有某种重定向或ajax后台提交正在触发。

我其实不应该这么说,因为我讨厌吹毛求疵和刻意追求声望,但如果我的回答是正确的,你应该将其标记为正确答案。 - Chris

2
你是否有类似于这样的代码?
this.Init += Page_Init;

如果是这样,那么你可能会意外地将事件绑定两次。要么删除手动事件绑定,要么将AutoEventWireup设置为false

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接