C# asp.net et envoie de ArrayList comme une variable de session

Signaler
Messages postés
42
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
29 janvier 2013
-
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
bonjour a  tous
je debute en c# et asp.net et voila je trouve de difficultés a transmettre une ArrayList d'une page a une autre
donc jé penser a les variable de session mais malheureusement ça marche pas 
 jé ds ma premiere page :

ArrayList stockPicks= newArrayList();
Session["stockPicks"] = stockPicks;

 

stockPicks.Add("aaa").ToString();

stockPicks.Add("bbb").ToString();

stockPicks.Add("ccc").ToString();

stockPicks.Add("ddd").ToString();

et dans ma 2eme page

ArrayList
liste = newArrayList();

liste = (ArrayList)Session["stockPicks"];

foreach (Object o in liste)

{

Console.Write(o.ToString());

}

mais une exception apparait de type

Impossible d'effectuer un cast d'un objet de type 'System.Boolean' en type 'System.Collections.ArrayList'.

 svp qelq1 peut maider
merci d'avance

good luck

1 réponse

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
93
Salut,

En dehors du problème de type et du fait d'utiliser ArrayList au lieu des generics, commençons par épurer le code de tout ce qui ne sert à rien.

Il nous reste :
ArrayList stockPicks= newArrayList();
Session["stockPicks"] = stockPicks;
stockPicks.Add("aaa");
stockPicks.Add("bbb");
stockPicks.Add("ccc");
stockPicks.Add("ddd");


et

ArrayList liste = (ArrayList)Session["stockPicks"];

On a déjà économiser au minimum la création de 4 instances de String et d'une instance d'ArrayList pour rien...

Concernant le problème de type, cherche donc les autres endroits où tu touches à Session["stockPicks"], tu dois lui affecter un boolean.

/*
coq
MVP Visual C#
CoqBlog
*/