【发布时间】:2016-07-01 21:20:19
【问题描述】:
我已经创建了 WCF 服务。它工作正常,但我们的客户希望以某种特定形式做出响应。我分享了 2 个回复
我的代码:
[ServiceContract]
public interface IService
{
[OperationContract]
MyClass GetMyData();
// TODO: Add your service operations here
}
// 使用如下示例所示的数据协定将复合类型添加到服务操作。 [数据合约] 公共课 MyClass { int _id ; 字符串 _name ;
[DataMember]
public int ID
{
get { return _id; }
set { _id = value; }
}
[DataMember]
public string Name
{
get { return _name; }
set { _name = value; }
}
}
【问题讨论】:
-
你为什么要这样做?
WCF应该发送SOAP消息。 -
因为我们的客户想要那种格式的响应
-
他们想要什么格式的响应?您的问题缺乏细节。
-
请注意,WCF 3.5 支持 SOAP 信封和“普通”XML 和 JSON 响应 - 除了支持 REST(通过被黑的附加组件)。如果您使用的是“web”模式,那么 WCF 将根据从客户端收到的 HTTP
Accept标头自动将响应呈现为 XML 或 JSON。 -
WCF 旨在支持任意协议(实际上,TCP 支持是开箱即用的)但是这个过程很困难,WCF 现在通常被认为是一个生命周期结束的平台。它的替代品:ASP.NET Web API,严格来说是仅支持 HTTP+REST 的,完全不能很好地支持 SOAP 或其他协议。
标签: wcf