无法从AJAX调用上的Web服务会话ASMX ASP.NET保存和获取值



在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);
     }

在上面的代码会话中,数据为null。我还在Web配置中添加了会话状态,但行不通:

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

谢谢。

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

如果这两种方法是在同一请求期间,则为null。.NET中的会话变量设置在响应标头的客户端,但是当您尝试阅读它们时,它们来自客户端的请求标头,自从请求以来就没有更改。

相关内容

  • 没有找到相关文章

最新更新