繁体   English   中英

无法通过AJAX调用上的Web服务会话ASMX asp.net保存和获取价值

[英]Unable to save and get value from web service session ASMX asp.net on AJAX Call

在asp.net Web服务中的会话设置和获取对象方面需要帮助。 我将会话保存在一种服务方法中,当尝试检索它时,只给出null。 下面是保存会话的示例代码

 [WebMethod(EnableSession = true)]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string setObj(NameValue[] formVars)
    {
       MyObject obj = new MyObject();
       obj.vlaue = "1";
       Session["obj"] = (object) obj;
        return new JavaScriptSerializer().Serialize("");
     }

参加会议:

[WebMethod(EnableSession = true)]
    [ScriptMethod(ResponseFormat = ResponseFormat.Json)]
    public string getObj(NameValue[] formVars)
    {
       MyObject obj = new MyObject();

        obj = (MyObject)Session["obj"] ;
        return new JavaScriptSerializer().Serialize(obj.value);
     }

在以上代码中,会话数据为空。 我还在Web配置中添加了会话状态,但无法正常工作:

<system.web>

 <pages>
  <namespaces>
    <add namespace="System.Web.SessionState"/>
  </namespaces>
</pages>
<sessionState mode="InProc"></sessionState>

谢谢。

我将会话保存在一种服务方法中,当尝试检索它时,只给出null。

如果这两个方法在同一请求期间,则为null。 .Net中的会话变量是在客户端的响应标头中设置的,但是当您尝试读取它们时,它们来自客户端的请求标头,自发出请求以来,该标头从未更改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM