【问题标题】:Why is there a need to send JSON as string while passing parameters to WCF from jQuery为什么在将参数从 jQuery 传递给 WCF 时需要将 JSON 作为字符串发送
【发布时间】:2010-10-22 16:42:15
【问题描述】:

直到我使用 httpHandlers 来执行所有服务器端逻辑并且这些 httpHandlers 被 jQuery $.Ajax 调用。

在这种情况下,要传递我用来传递纯 JSON 对象(显然是键值对)的任何参数,该对象会自动转换为服务端的 Request.Form 键。

现在,当我尝试从 jQuery 调用 WCF 端点时,我知道要以 JSON 格式传递任何参数,我必须将其作为字符串传递,可能正在使用 JSON.stringify。

但我想知道的是,传递字符串而不是 JSON 对象的需要是什么。为什么 WCF 不允许直接传递 JSON 对象?如果是因为,JSON 对象可以被调和,那么字符串也可能发生这种情况。

有什么想法吗???

谢谢, 普拉纳夫考希克

PranavKaushik.Wordpress.com

【问题讨论】:

    标签: jquery wcf json


    【解决方案1】:

    Pranav,原因是 WCF 的 JSON 解析都是在服务器端由 .NET 驱动的,因此,在输入中需要 .NET 样式的字符串以进行高效解析。非字符串化 JSON 输入本质上会破坏 .NET 的默认解析机制,并迫使 WCF 编码器/格式化程序堆栈重新工作,然后重新解释它获得的 JSON。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-19
      • 1970-01-01
      相关资源
      最近更新 更多