从wcf服务获取json数据而不使用[WebGet(ResponseFormat = WebMessageFormat.Json)]

时间:2011-10-29 17:49:15

标签: wcf

我想创建一个以JSON形式返回数据的示例wcf服务。 但我不想使用[WebGet(ResponseFormat = WebMessageFormat.Json)]因为我认为 那我的服务合同会受到污染。因为使用WCF的重点是创建WCF然后使用端点来获取像JSON / C#等新类型。

有没有办法创建一个wcf服务,然后使用config通过添加服务行为和特定的enpoint来获取json数据 可能是我在想错。

谢谢, Daljit Singh

1 个答案:

答案 0 :(得分:2)

您可以尝试查看WCF WebHttpService,因为它可以配置为明确设置格式或根据请求自动设置格式。默认设置自动设置格式,服务将尝试按以下顺序确定响应的格式:

  1. 请求的HTTP Accept标头的值。
  2. 请求的内容类型。
  3. 操作的默认格式响应。
  4. 这里有一篇博文:Automatic and Explicit Format Selection in WCF WebHttp Services

    整个系列(好的,12个部分中的前10个,最后两个尚未发布)我在这里:Introducing WCF WebHttp Services in .NET 4

    不确定这是否正是您正在寻找的,但它可能有所帮助。