商店列表会话
是否有可能存储列表会话variables在Asp.net C#?
是的,你可以存储任何对象(我假设你使用的ASP.NET默认设置,这是进程中的会话状态):
Session["test"] = myList;
您应该将其重新转换为原始types以供使用:
var list = (List<int>)Session["test"]; // list.Add(something);
正如Richard指出的那样,如果您使用的其他会话状态模式(例如SQL Server)需要对象可序列化,则应该格外小心。
是。 你在写什么平台? ASP.NET C#?
List<string> myList = new List<string>(); Session["var"] = myList;
然后,检索:
myList = (List<string>)Session["var"];
我发现在页面范围外的一个类文件中,上面的方式(我总是用)没有工作。
我在这个“上下文”中find了一个解决方法,如下所示:
HttpContext.Current.Session.Add("currentUser", appUser);
和
(AppUser) HttpContext.Current.Session["currentUser"]
否则,当我指向会话对象的对象时,编译器期待一个string。
尝试这个..
List<Cat> cats = new List<Cat> { 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<YourListType>)Session["SessionName"];