如何在模型asp.net mvc中访问会话

kal*_*alu 6 session-variables asp.net-mvc-3

如何从模型访问会话?

我尝试使用:

public IQueryable<EstudentsViewModel> GetEstudentsProjected(decimal? Code)
        {
           .
           .   
           .
           decimal id;
           id = (decimal)Session["Consul"];
           .
           .
           .
        }
Run Code Online (Sandbox Code Playgroud)

出现:当前上下文中不存在名称"会话"

Dar*_*rov 24

如何从模型访问会话?

您可以随时执行以下色情内容:

HttpContext.Current.Session["Consul"]
Run Code Online (Sandbox Code Playgroud)

但是,拜托,噢,我的圣地,请允许我永远不要犯下这样的罪行.

模型永远不应该知道会话是什么.会话是一个Web术语,模型应该完全不可知.您应该从有权访问Session的Controller传递Model所需的信息.

所以看看这个:

public IQueryable<EstudentsViewModel> GetEstudentsProjected(decimal? Code, decimal id)
{
    ...
}
Run Code Online (Sandbox Code Playgroud)

从控制器调用此方法时,您只需传递Session中的值,因为Controller可以访问它.