2009-05-06 3 views
1

Salut tout le monde, j'ai le problème suivant qui me rend vraiment fou.Les databindings d'Asp.net perdent après la publication

Après je joue toute sorte de postback, plusieurs contrôles eux-mêmes ne REBIND, par exemple

DetailsView avec un ObjectDataSource attaché (dans mon cas ObjectContainerDataSource) LoginView ne montre pas les LoggedInTemplate mais LoginStatus me montre comme connecté Je suis presque désespérée et j'aime savoir si vous avez eu le même problème ou similaire dans le passé et peut me donner un indice.

Merci à l'avance

Répondre

1

sans voir votre code actuel, je vous suggère de regarder les paramètres enableViewState pour la page et pour les contrôles individuels.

Ceci est un bon article sur managing viewstate.

Vous devriez également rechercher le code dans une section comme celui-ci dans votre page_load()

if(!IsPostback) 
{ 
    // code to bind some of your controls 
} 

Ce code serait seulement être appelé la première fois que vous entrez dans la page, mais pas dans le postback. Si vous quittez la page et que vous revenez, le code de liaison recommencera.

0

Votre databind se passe-t-il dans l'événement page_load? Si non, reliez-vous lorsque la page est rechargée?

Vos contrôles sont-ils chargés dynamiquement?

+0

-1 pour quoi? Curieux qui a donné ce vote -ve et n'a pas réussi à laisser aucun commentaire. (+1 de moi) – Prash

2

Si la liaison est effectuée dans la méthode Page_Load, vérifiez qu'elle se trouve dans la boucle ifbackback.

if (!IsPostBack) 
    { 
     //Your code to bind data 
    } 

Après chaque publication, l'événement de chargement de page est déclenché. Donc, si les commandes ne sont pas faites pour se lier à l'intérieur de la boucle donnée ci-dessus, la liaison aura lieu à chaque fois que la publication se produit.

Questions connexes