Задумывались ли вы об упаковке вашего List<string>
в свойство пользовательского объекта контекста? Мне пришлось сделать что-то подобное в приложении, поэтому я закончил тем, что создал для меня объект UserContext
со свойством Current
, который позаботился о создании новых объектов и сохранении их в сеансе. Вот основной код, настроенный для вашего списка:
public class UserContext
{
private UserContext()
{
}
public static UserContext Current
{
get
{
if (HttpContext.Current.Session["UserContext"] == null)
{
var uc = new UserContext
{
StringList = new List<string>()
};
HttpContext.Current.Session["UserContext"] = uc;
}
return (UserContext) HttpContext.Current.Session["UserContext"];
}
}
public List<string> StringList { get; set; }
}
Я на самом деле получил большую часть этого кода и структуры от этого ТАКОГО вопроса .
Поскольку этот класс является частью моего Web
пространства имен, я обращаюсь к нему так же, как и к объекту HttpContext.Current
, поэтому мне никогда не нужно ничего явно приводить.