I've recently ran into some code that checks Page.IsCallBack
but I wasn't sure how it is different from Page.IsPostBack
. Can anyone enlighten me?
Edit: Are they mutually exclusive or can both occur at the same time in a given situation?
I've recently ran into some code that checks Page.IsCallBack
but I wasn't sure how it is different from Page.IsPostBack
. Can anyone enlighten me?
Edit: Are they mutually exclusive or can both occur at the same time in a given situation?
Page.IsCallBack
It is getting a value indicating whether the page request is the result of a call back. Its a special postback, so a round-trip always occurs; however, unlike the classic postback, the script callback doesn't redraw the whole page. ViewState is not updated during a callback, it is for postback.
Page.IsPostBack
Checks whether the Page is accessing the server for the first time or not. Unlike the IsCallBack, the ViewState is updated
Refer to Page Life Cycle for more detail that shows a diagram illustrating the sequence of events
Edit - To answer your new question
Page.IsPostback property will return true for both request types. The Page.IsCallback property will return true only when the request is a client callback
IsPostBack
is true when the page is posted via a form method
IsCallBack
is true when the page has been called back from an AJAX call.
A postback is when the form is posted back to itself, either by clicking a submit button or through Javascript (like AutoPostback controls)
A callback is when an AJAX Control calls a method on the page as part of an ajax request