【问题标题】:WCF service adds :# to JSON objectWCF 服务将 :# 添加到 JSON 对象
【发布时间】:2013-11-15 19:08:20
【问题描述】:

以前从未使用过 WCF 服务,因此我决定将启用 AJAX 的 WCF 服务添加到项目中,以查看它与 ASMX 的比较。在这个例子中,有一个简单的 post 请求来获取序列化为 JSON 的对象列表。我能说的唯一不同是,对于 ASMX 和 WCF,在返回的 JSON 数组的 type 属性中,WCF 服务将 :# 添加到 __type 属性的末尾。这背后的原因是什么? (并且还显示了 type 属性以及 WCF 中属性列表的结尾与 ASMX 中属性列表的开头

ASMX Service
__type: "Person", PersonId:123, FirstName: "joe", LastName: "smith"
WCF
__type: "Person:#", PersonId: 123, FirstName: "joe", LastName: "smith"

【问题讨论】:

    标签: c# wcf web-services


    【解决方案1】:

    WCF 中类型提示的:# 部分是命名空间。它在 ASMX 服务可用功能的基础上增加了另一个级别的功能(两者使用不同的序列化器来序列化 JSON)。

    您可以在以下的多态性部分了解更多信息:

    Stand-Alone JSON Serialization - MSDN

    【讨论】:

    • 很高兴知道,在意识到没有理由打败死去的 ASMX 之后,我最近开始涉足 WCF。
    • 就个人而言,我也不会为 WCF 烦恼。我会直接进入 Web API - asp.net/web-api
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-23
    相关资源
    最近更新 更多