Store List to session

est-il possible de stocker la liste dans la variable de session dans Asp.net C #?

Oui, vous pouvez stocker n’importe quel object (je suppose que vous utilisez ASP.NET avec les parameters par défaut, qui est l’état de session in-process):

Session["test"] = myList; 

Vous devez le retourner au type d’origine pour l’utiliser:

 var list = (List)Session["test"]; // list.Add(something); 

Comme le souligne Richard, vous devriez prendre des précautions supplémentaires si vous utilisez d’autres modes d’état de session (par exemple, SQL Server) nécessitant que les objects soient sérialisables.

Oui. Pour quelle plate-forme écrivez-vous? ASP.NET C #?

 List myList = new List(); Session["var"] = myList; 

Ensuite, pour récupérer:

 myList = (List)Session["var"]; 

J’ai trouvé dans un fichier de classe en dehors de la scope de la page, la manière ci-dessus (que j’ai toujours utilisée) n’a pas fonctionné.
J’ai trouvé une solution de contournement dans ce “contexte” comme suit:

 HttpContext.Current.Session.Add("currentUser", appUser); 

et

 (AppUser) HttpContext.Current.Session["currentUser"] 

Sinon, le compilateur attendait une chaîne lorsque je pointais l’object sur l’object de session.

Essaye ça..

  List cats = new List { new Cat(){ Name = "Sylvester", Age=8 }, new Cat(){ Name = "Whiskers", Age=2 }, new Cat(){ Name = "Sasha", Age=14 } }; Session["data"] = cats; foreach (Cat c in cats) System.Diagnostics.Debug.WriteLine("Cats>>" + c.Name); //DEBUGGG 
 YourListType ListName = (List)Session["SessionName"];