我有一个ControllerBase抽象类,如下所示。如何在抽象类的静态属性中使用HttpContext.Current.Session。
using System.Web;
using System.Web.Mvc;
public abstract class ControllerBase : Controller
{
public static string SesssionId
{
get { return HttpContext.Current.Session["SessionId"]; }
}
}
我收到错误
“对象引用是所必需的非静态字段,方法或 属性“System.Web.Mvc.Controller.HttpContext.get”
但是我在其他静态类中使用过,并没有得到上述错误。
我不知道如何HttpContext可访问,但不是当前。
任何人都可以澄清我,上述有什么问题。
改变'公共字符串SessionId' – wudzik
你可以做的@wudzik说。真正的问题是,'Controller'本身具有'HttpContext'属性,所以编译器认为你想使用它。你可以声明它是全限定的:'System.Web.HttpContext.Current' –