Gridview ne se met pas à jour

mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008 - 24 juil. 2007 à 14:19
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008 - 24 juil. 2007 à 17:03
J'ai encore un problème avec mon satané gridview !!!
Quand je clique sur mon bouton "Recherche", je calcule un fichier XML (différent selon si les critères remplis dans mes textbox sont différents) et j'affiche ce XML dans mon gridview.
Problème : mon gridview ne se met pas toujours à jour !! des fois, il garde ses anciennes données comme si je n'avais pas recalculé mon XML.
Ca a deja fait ca a quelqu'un ??

12 réponses

mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 14:20
oups je me suis trompé de forum
0
sexy_developpeuse Messages postés 21 Date d'inscription mardi 22 mars 2005 Statut Membre Dernière intervention 5 septembre 2007
24 juil. 2007 à 14:22
salut Mezthium,

je voudrais savoir si tu as trouvé une solution à ton problème car j'ai aussi le même souci

merci d'avance,
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
24 juil. 2007 à 15:36
Es-tu sûr que ton fichier xml a bien été sauvegardé avec les nouvelles données??

<hr />
@+  
0
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 16:13
oui oui ..
J ecris mon flux XML dans un fichier pour tester, et bien qu'il change à chaque fois mon gridview ne se met pas à jour.
J ai supprimé certains objets à la main :

Code de mon bouton Recherche :
[...]

XmlDataSource xds =
new
XmlDataSource();xds.Data = FluxXML.OuterXml; // FluxXML est le xml renvoyé par mon web service

GridView1.DataSource = xds;

GridView1.DataBind();
xds null;GridView1.DataSource

null;

Du coup maintenant mon gridview se recharge quelquefois (avant c'etait jamais !! il fallait que je ferme visual studio) mais pas toujours ...
il y'a des fois ou je dois cliquer 6 ou 7 fois sur mon bouton "Recherche" pour que le gridview veuille enfin se mettre à jour ...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
24 juil. 2007 à 16:24
Si tu places un espion sur la ligne xds.Data = FluxXML.OuterXml;

as-tu les bonnes données dans FluxXML.OuterXml?

Ton problème est sûrementlié au temps de réponse de ton webservice...
<hr />
@+  
0
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 16:28
oui,juste avant de faire le binding , j'ai les bonnes données dans mon datasource !
c est pour ca que je comprend vraiment plus rien ..
misère!
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
24 juil. 2007 à 16:40
Tu n'aurais pas un bout de code dans ton page_load qui affecte d'autres données à ton GridView?

<hr />
@+  
0
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 16:41
bon et bien quand j'abandonne la pagination et que j'affiche donc tout mes resultats sur la meme page.. ca marche très bien!
c est donc ma pagination qui a mis le bordel.
en tout cas, merci a toi d avoir essayé de m aider sur ce truc
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
24 juil. 2007 à 16:46
Tu refais un DataBind lors de ta pagination, et lors du rechergement de ta page, l'évènement de pagination est appelé une nouvelle fois et dois recharger ton GrodView avec les mauvaises données....

Quel code utilises-tu dans ta pagination?

<hr />
@+  
0
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 16:57
En fait je voulais gérer la pagination (qui n'etait pas du tout mise en place) quand je me suis rendue compte de ce truc bizarre : le gridview qui se mettait a jour que quand il le voulait.
J'ai donc remis la pagination a plus tard, je voulais d'abord résoudre ca, mais j'ai laissé l'affichage d'une ligne/page dans mon gridview (et j'ai 3 lignes en tout).
Et en fait quand je remet l'affichage de 3lignes/page, mon gridview se met à jour bien comme il faut.
Je trouve ca un peu bizarre mais bon.
Donc maintenant, dans ma fonction GridView1_PageIndexChanging je fais un databind avec mon datasource que j'ai stocké dans une variable de session comme tu me l'a montré!
et tout marche nikel

merci !
0
cs_drahcir Messages postés 745 Date d'inscription mardi 30 novembre 2004 Statut Membre Dernière intervention 15 septembre 2009 4
24 juil. 2007 à 17:01
Ok, donc il faut que tu mettes à jour ta variable de session avec ce que te renvois ton webservice, et ce, à chaque fois que tu fais une mise à jour de tes données.

<hr />
@+  
0
mezthium Messages postés 23 Date d'inscription mardi 3 juillet 2007 Statut Membre Dernière intervention 2 avril 2008
24 juil. 2007 à 17:03
en tout cas, bien que ce soit le fait de ne pas gerer la pagination qui faisait tout foirer, il faut quand meme forcer la destruction de mon objet datasource à la fin de ma fonction (xds=null),  car apparemment cela ne se fait pas( ou mal) automatiquement.
0
Rejoignez-nous