Page.IsPostBack和Page.IsCallBack有什么区别?

时间:2009-04-17 15:33:45

标签: asp.net postback callback page-lifecycle

我最近遇到了一些检查Page.IsCallBack的代码,但我不确定它与Page.IsPostBack的区别。谁能开导我?

编辑:它们是互斥的还是在特定情况下可以同时发生?

5 个答案:

答案 0 :(得分:43)

<强> Page.IsCallBack

  

获取一个值,指示页面请求是否是回叫的结果。它是一个特殊的回发,因此总是会发生往返;但是,与经典的回发不同,脚本回调不会重绘整个页面。回调期间 ViewState未更新,它用于回发。

Page.IsPostBack

  

检查Page是否第一次访问服务器。与IsCallBack不同,ViewState已更新

有关详细信息,请参阅Page Life Cycle,其中显示的图表说明事件序列

修改 - 回答您的新问题

  

对于两种请求类型,Page.IsPostback属性都将返回true。仅当请求是客户端回调

时,Page.IsCallback属性才会返回true

答案 1 :(得分:31)

通过表单方法

发布页面时,

IsPostBack为true 当从AJAX调用回调页面时,

IsCallBack为真。

答案 2 :(得分:6)

回调是一种特殊的回发,所以总是会发生往返;但是,与经典的回发不同,脚本回调不会重绘整个页面。回调期间不会更新ViewState,而是用于回发。

更多信息here

答案 3 :(得分:6)

回发是指表单通过单击提交按钮或通过Javascript(如AutoPostback控件)发布回自身

回调是指AJAX控件在页面上调用方法作为ajax请求的一部分

答案 4 :(得分:0)

Page.IsPostBack 检查Page是否是第一次访问服务器。与IsCallBack不同,ViewState已更新