2009-04-17 11 views
41

J'ai récemment rencontré un code qui vérifie Page.IsCallBack mais je ne savais pas comment il est différent de Page.IsPostBack. Quelqu'un peut-il m'éclairer?Quelle est la différence entre Page.IsPostBack et Page.IsCallBack?

Édition: Sont-ils mutuellement exclusifs ou peuvent-ils se produire simultanément dans une situation donnée?

+0

Étant donné les réponses à ce jour, une meilleure question pourrait être quelle est la différence entre IsCallback et IsAsync? – Echilon

Répondre

43

Page.IsCallBack

Il devient une valeur indiquant si la demande de page est le résultat d'un appel. C'est un postback spécial, donc un aller-retour se produit toujours; Cependant, contrairement à la publication classique, le rappel de script ne redessine pas toute la page. ViewState n'est pas mis à jour lors d'un rappel, c'est pour la publication.

Page.IsPostBack

vérifie si la page est en train d'accéder au serveur pour la première fois ou non. Contrairement à la IsCallBack, le ViewState est mis à jour

Se reporter à la Page Life Cycle pour plus de détails qui montre un diagramme illustrant la séquence des événements

Edition - Pour répondre à votre question nouvelle

La propriété Page.IsPostback renvoie true pour les deux types de requête. La propriété Page.IsCallback renvoie true uniquement lorsque la demande est un rappel client

+0

J'aime votre réponse, mais pourriez-vous reformuler votre 2e citation afin qu'elle soit plus propre? Merci. –

+2

Lien maintenant cassé. Peut-être devrait être http://edndoc.esri.com/arcobjects/9.2/NET_Server_Doc/developer/ADF/ajax_callback.htm? –

6

Un rappel est une publication spéciale, un aller-retour est toujours effectué; Cependant, contrairement à la publication classique, le rappel de script ne redessine pas toute la page. ViewState n'est pas mis à jour lors d'un rappel, c'est pour la publication.

Plus d'info here:

+0

Dans un rappel, pouvez-vous exécuter la réponse pour retourner un fichier (comme CSV) à télécharger par l'utilisateur? – dannyrosalex

29

IsPostBack est vrai lorsque la page est affichée par une méthode formulaire

IsCallBack est vrai lorsque la page a été rappelé d'un appel AJAX.

6

postback est lorsque le formulaire est affiché à lui-même, que ce soit en cliquant sur un bouton d'envoi ou par Javascript (comme les contrôles autopostback)

Un rappel est lorsqu'un contrôle AJAX appelle une méthode sur la page dans le cadre de une requête ajax

+2

Pouvez-vous donner quelques exemples de contrôles pertinents qui génèrent un rappel? –

0

Page.IsPostBack Vérifie si la page accède au serveur pour la première fois ou non. Contrairement à l'IsCallBack, le ViewState est mis à jour