当我调用基本方法时,我正在丢失会话,是否有理由获得空会话?
这是我的控制器动作
public class SystemAdminController : BaseController
{
[HttpPost]
public ActionResult Index(string removeItems)
{
//Session["storedevices"] <<<< my session data is still avail
RemoveItemFromGrid(removeItems); //<<< as soon as I call this method my Session get lost why?
}
}
public class BaseController : Controller
{
public void RemoveItemFromGrid(string items)
{
//Session["storedevices"] //Session is null/lost here?
//to do
}
}
答案 0 :(得分:0)
你的代码有些奇怪。它应该工作得很好。
有些东西可以帮助您调试:
Session["storedevices"]
属性之前,您没有尝试访问BaseController
上的Controller.Session
。例如,它在Controller的构造函数中应该为null。它只能在Initialize
方法之后才能使用,如果我记得很清楚的话。this.Session == base.Session
。出于某种原因,你可能会&#34;新的&#34;后代Controller中的Session
属性。只需在那里放一个断点并确保这个表达式为真。this.Session == System.Web.HttpContext.Current.Session
。