我在尝试从VB,VS2012中的Class文件中分配会话值时遇到此错误。
Object reference not set to an instance of an object.
我在下面尝试过两行代码并得到同样的错误。
System.Web.HttpContext.Current.Session("dbTblName") = dbTblName
HttpContext.Current.Session("dbTblName") = dbTblName
dbTblName变量填充了字符串值。函数类从调用到Web服务调用。
啊我觉得我看到了,这里没有http。咄!
答案 0 :(得分:1)
最有可能的原因是,在分配时,在此范围或上下文中,您无法访问会话所属的HttpContext对象。
为什么不在分配之前检查HttpContext是否可用。但是,如果您可以提供有关课程的更多信息以及您在哪里打电话,那么可以提供更好的帮助
更新:
如果您在服务中调用此方法,则可能需要在服务对象上使用方法属性来启用会话对象,因为默认情况下不启用此方法:
[WebMethod(EnableSession = true)]
public void CallingMethod()
{
}