В чем разница между Page.IsPostBack и Page.IsCallBack?
Я недавно столкнулся с кодом, который проверяет Page.IsCallBack
но я не был уверен, как это отличается от Page.IsPostBack
, Кто-нибудь может просветить меня?
Изменить: они взаимоисключающие или оба могут возникать одновременно в данной ситуации?
5 ответов
Page.IsCallBack
Он получает значение, указывающее, является ли запрос страницы результатом обратного вызова. Это особый постбэк, поэтому всегда происходит путешествие туда и обратно; однако, в отличие от классического обратного вызова, обратный вызов сценария не перерисовывает всю страницу. ViewState не обновляется во время обратного вызова, он для обратной передачи.
Page.IsPostBack
Проверяет, обращается ли страница к серверу в первый раз или нет. В отличие от IsCallBack, ViewState обновляется
Обратитесь к жизненному циклу страницы для более подробной информации, которая показывает диаграмму, иллюстрирующую последовательность событий
Редактировать - чтобы ответить на ваш новый вопрос
Свойство Page.IsPostback вернет true для обоих типов запросов. Свойство Page.IsCallback будет возвращать true, только если запрос является обратным вызовом клиента
IsPostBack
верно, когда страница размещена с помощью метода формы
IsCallBack
Истинно, когда страница была отозвана из вызова AJAX.
Обратный вызов является специальным обратным вызовом, поэтому всегда происходит обратное путешествие; однако, в отличие от классического обратного вызова, обратный вызов сценария не перерисовывает всю страницу. ViewState не обновляется во время обратного вызова, он для обратной передачи.
Больше информации здесь:
Обратная отправка - это когда форма отправляется обратно самой себе, либо нажав кнопку отправки или с помощью Javascript (например, элементы управления AutoPostback)
Обратный вызов - это когда элемент управления AJAX вызывает метод на странице как часть запроса AJAX.
Page.IsPostBack Проверяет, обращается ли страница к серверу в первый раз или нет. В отличие от IsCallBack, ViewState обновляется