Asp.net 使用[WebService(EnableSession=true)]属性时,web服务中的会话为空

Asp.net 使用[WebService(EnableSession=true)]属性时,web服务中的会话为空,asp.net,asp.net-mvc,session,Asp.net,Asp.net Mvc,Session,我正在尝试获取一个名为“Captcha”的会话变量,我以前在控制器中存储并定义了该变量。但即使在我使用[WebService(EnableSession=true)]时,“会话”本身也会引发空引用异常 这是我的方法:(这是在我的ASP.NETMVC项目的一个web服务中) 因此,正如您在上面看到的,我添加了`[WebMethod(EnableSession=true)]属性,但它仍然抛出一个异常。 “会话”本身在控制器中工作,但在web服务中,我得到一个例外。 我已经阅读了大多数关于这方面的问题

我正在尝试获取一个名为“Captcha”的会话变量,我以前在控制器中存储并定义了该变量。但即使在我使用
[WebService(EnableSession=true)]
时,“会话”本身也会引发空引用异常

这是我的方法:(这是在我的ASP.NETMVC项目的一个web服务中)

因此,正如您在上面看到的,我添加了`[WebMethod(EnableSession=true)]属性,但它仍然抛出一个异常。 “会话”本身在控制器中工作,但在web服务中,我得到一个例外。 我已经阅读了大多数关于这方面的问题,但没有一个在我的案例中起作用

我不知道我的代码出了什么问题。
提前感谢您正在使用的web服务。。Web API/ASMX或WCF?我正在使用ASMX………你找到什么了吗?@RaviRajindu我很抱歉,我的朋友,这是两年多前的事了,我真的不记得我最终做了什么。你必须用谷歌搜索东西,也许也不再使用
.asmx
,它很古老,你可以用ASP.NET Web API实现你用
.asmx
所做的一切。
    [WebMethod(EnableSession = true)]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public bool IsCaptchaCorrect(string captcha)
    {
        if (HttpContext.Current.Session["Captcha"] != null) // "Session" throws a 'NullReferenceException'
            return HttpContext.Current.Session["Captcha"].ToString().ToLower() == captcha.ToLower();
        return false;
    }