微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ASP.NET-使用JSON发送响应-考虑到源代码,无法接收到响应

如何解决ASP.NET-使用JSON发送响应-考虑到源代码,无法接收到响应

我的基本类定义了以下方法

protected void RespondWithJson<T>(T graph)
{
    var response = HttpContext.Current.Response;
    ClearResponse();
    response.ContentType = "text/json";
    DataContractJsonSerializer ds = new DataContractJsonSerializer(typeof(T));
    ds.WriteObject(response.OutputStream,graph);
    response.End();
    sql_disconnect();
}

方法属于所有将使用JSON响应的页面,具体取决于URL中的查询参数。

当您考虑所涉及的源代码时,我从其中一页获得的响应毫无意义。

页面用于为我们的分拣和打包操作分别提交分拣。 RespondWithJson是这些页面用来确定其响应的唯一方法

picksubmission页面做出的唯一响应是PickSubmissionResult类型

例如

RespondWithJson(new PickSubmissionResult() { message = "Some URL Parameters are missing from the call!" });

但是,我实际上从此页面获得的响应的类型为List<PickingRow>

完全在服务器上的不同页面将使用List<PickingRow>做出响应。

那么为什么要在此页面调用一个页面方法呢?

解决方法

已解决。

以前,我将“ Requestor”类设置为静态。 现在,我已将对每个Page对该类的引用替换为对它们自己的此类的单独实例的引用(现在是动态类)

    protected Requestor requestor;

    protected override void Page_Load(object sender,EventArgs e)
    {
        requestor = new Requestor();
        requestor.SessionSet += Requestor_SessionSet;
    }

现在,仅在最后访问的页面上调用Requestor_SessionSet处理程序,而不是在域的生命周期内调用所有访问的页面。

这里的课程:

静态实例并非请求/页面唯一,而是在服务器范围内

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。