2010-08-19 62 views

回答

4

相当简单:

  • 避免任何.NET细节像例外(把它们变成SOAP错误)

  • 不使用任何绑定与net像开始netTcp,netNamedPipes,netMsmq和等等 - 使用wsHttpBinding作为安全的WS- *服务,并使用basicHttpBinding来达到最大范围甚至是最奇怪的客户端平台的兼容性

  • 不使用Ne tDataContractSerializer

+0

1)如何改变例外任何提示到SOAP错误? - 我不确定这到底意味着什么。 2)关于不使用NetDataContractSerializer:我在我的数据合同上使用System.Xml.Serialization,是互操作性的更好选择吗? – VoodooChild 2012-12-07 07:34:30

3

我推荐WCF REST暴露多种序列化格式,对于初学者来说肯定是xml。

3

一般的互操作性:

  • 只有HTTP和HTTPS传输信道的安全凭证可互操作的
  • 谈判是不能互通的(negotiateServiceCredential在信息安全)。它使用TLSNego或SPNego协议,这些协议并不总是受其他平台的支持。
  • HTTP流可引起麻烦以及
  • 通过HTTP信道的二进制编码不是可互操作的
  • OleTransactions不能互操作
  • 小心使用服务的安全上下文(estabilishSecurityContext在消息安全性)。它使用WS-安全对话协议,该协议不适用于某些平台

编辑:

  • WSDualHttpBinding和CompositeDuplexBindingElement不能互操作
相关问题