Я использую оболочку Session, как написано ниже.У меня проблема в том, что при запуске тестов попытка не работает, и она идет на улов, поэтому переменные сеанса никогда не устанавливаются.Я использую Moq для создания фиктивного состояния Session для моего фиктивного контекста.Если я создаю переменную, такую как:
Session["variable"] = "something";
, которая работает нормально и сохраняется до конца теста.Все созданное для меня в обертке нет.Поскольку сессия каким-то образом сохраняется, моя теория заключается в том, что мне нужно выяснить, где она находится, а затем поместить ее в свой улов.Я не знаю, как это сделать, хотя.открытый класс MySession {// закрытый конструктор private MySession () {id = new Random (). Next (100000);}
// Gets the current session.
public static MySession Current
{
get
{
MySession session = new MySession();
try
{
session =
(MySession)HttpContext.Current.Session["__MySession__"];
}
catch
{
//Catch nothing
}
if (session == null)
{
session = new MySession();
HttpContext.Current.Session["__MySession__"] = session;
}
return session;
}
}
// **** add your session properties here, e.g like this:
public int id { get; set; }