Comment vider le tampan d'Aplication[""]

lazinss Messages postés 7 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 janvier 2009 - 19 janv. 2009 à 22:44
lazinss Messages postés 7 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 janvier 2009 - 20 janv. 2009 à 21:05
Bonjour j'utilise Application[""] pour transférer des variables entre 2
pages, mais apparemment il garde la variable transmise en tampon ce qui
fait que quand je clic deux fois de suite j'obtiens la même variable et
la troisième fois la variable change, voici le code pour transmettre la
variable :

Code :
 
protectedvoid GridView2_SelectedIndexChanged(object sender, EventArgs e)
{
Application["mb"] = GridView2.SelectedRow.Cells[1].Text;
}
 

et celui qui récupéré la variable puis l'affiche:

Code :
 
protectedvoid Page_Load(object sender, EventArgs e)
{
TextBox4.Text = Application["mb"].ToString();
}
 

Avez vous une idée de la façon dont je peux vider la cache pour ne pas avoir la même valeur deux fois de suite ?

Merci

4 réponses

GillouXman Messages postés 561 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 10 juin 2010
20 janv. 2009 à 10:51
Application.Clear();
0
lazinss Messages postés 7 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 janvier 2009
20 janv. 2009 à 16:16
Merci pour ta reponse, mais quand je fais cela ca fonctionne une fois apres ca renvoie des valleurs  nulles de plus j'ai maintenant ce message d'erreur :
<title>La référence d'objet n'est pas définie à une instance d'un objet.</title><style><![CDATA[
body {font-family:"Verdana";font-weight:normal;font-size: .7em;color:black;}
p {font-family:"Verdana";font-weight:normal;color:black;margin-top: -5px}
b {font-family:"Verdana";font-weight:bold;color:black;margin-top: -5px}
H1 { font-family:"Verdana";font-weight:normal;font-size:18pt;color:red }
H2 { font-family:"Verdana";font-weight:normal;font-size:14pt;color:maroon }
pre {font-family:"Lucida Console";font-size: .9em}
.marker {font-weight: bold; color: black;text-decoration: none;}
.version {color: gray;}
.error {margin-bottom: 10px;}
.expandable { text-decoration:underline; font-weight:bold; color:navy; cursor:hand; }
]]></style>La référence d'objet n'est pas définie à une instance d'un objet.
Description :
Une exception non gérée s'est produite au moment de l'exécution de la
demande Web actuelle. Contrôlez la trace de la pile pour plus d'informations sur
l'erreur et son origine dans le code.

Détails de l'exception:
System.NullReferenceException: La référence d'objet n'est pas définie à une
instance d'un objet.

Erreur source:

Ligne 22 :     {

Ligne 23 :
Ligne 24 : TextBox16.Text = Session["mb"].ToString();
0
lazinss Messages postés 7 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 janvier 2009
20 janv. 2009 à 17:35
j'ai fais ca :

 protected void Page_Load(object sender, EventArgs e)
    {
        if( Application["info"] != null)
            TextBox16.Text = Application["info"].ToString();

et je n'ai plus le message d'erreur precedent, par contre , rien ne s'affiche alors que dans la page précédente j'ai ce code :    Application["info"] = "gdgdf";
0
lazinss Messages postés 7 Date d'inscription mardi 4 novembre 2008 Statut Membre Dernière intervention 26 janvier 2009
20 janv. 2009 à 21:05
tout s'affiche maintenant, mais les valeurs sont en retard car la fenêtre s'ouvre avant l'envoie des données, j'ai donc fais cela pour régler le problème :
 
protectedvoid GridView2_SelectedIndexChanged(object sender, EventArgs e)
{
Session.Add("mb", GridView2.SelectedRow.Cells[2].Text);
 
Response.Write("<script>var test = window.open('secondePage.aspx','confirm', 'toolbar=0, height= 145px, width= 305px, resizable= 0, scrollbars=0'); test.moveTo(400,200);</script>");
 

}

 
Mais maintenant la page du gridview est totalement déformer ,  la page web n'a plus de forme... si vous avez une idée de l'origine du problème , merci.     
0