【问题标题】:WCF service support both data contract serializer and xml serializerWCF 服务同时支持数据协定序列化程序和 xml 序列化程序
【发布时间】:2012-04-05 13:04:12
【问题描述】:

我想创建一个 WCF 服务,该服务将根据请求中的“Accept”标头返回 Json 和 XML。我想使用 XML 序列化程序,因为我可以更好地控制 xml 输出。要返回 json,我需要使用数据合同序列化程序。我看到不可能同时配置两者。有人对我如何实现这一点有任何想法吗?

谢谢

【问题讨论】:

    标签: wcf datacontractserializer xmlserializer


    【解决方案1】:

    我从您的问题中假设您想要创建一个 REST 类型的 API,它根据请求的标头返回 XML 或 JSON,而不是使用 SOAP 的 API。我确信这在 WCF 中是可能的,但是您必须正确配置配置,而且我很难找到正确配置的良好来源。网络上到处都是线索 (like here),但没有一个来源。我以为我有一个正在运行的示例,但我最近所做的一些更改似乎破坏了它。

    WCF 中的 REST 太难了。我的建议是使用ASP.NET Web API 来构建 REST 服务。它是 MVC 4.0 的一部分,易于使用和配置。开箱即用,它的工作方式就像您期望 REST API 工作一样,并将返回 JSON 或 XML,具体取决于标头中“接受”的设置。请注意,这个 Microsoft 产品的历史是它最初是 WCF REST Start Kit,后来成为 WCF Web API,现在最终成为 ASP.NET Web API。如果您使用 MVC,那么选择它很容易。

    【讨论】:

      猜你喜欢
      • 2011-03-18
      • 2010-10-18
      • 1970-01-01
      • 2012-04-07
      • 1970-01-01
      • 2010-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多