我们正在将一组 WSE 服务迁移到 WCF 平台。
新的 WCF 服务通过安全的 HTTP 调用。 (https
)
我想从另一个调用一个 WCF 服务的操作契约(Contract)。这两种服务大多托管在同一个 IIS 中,但它们可以位于单独的 IIS 服务器上。
最佳答案
1.)如果服务在同一个盒子上,使用命名管道,除非你有任何令人信服的理由不这样做,以相互通信。虽然 WCF 本身并不关心你在做什么,只要地址、绑定(bind)和契约(Contract)都匹配(看看我在那里做了什么?),而 .NET 在建立网络连接时会。你使用的越少越好。 (见 http://msdn.microsoft.com/en-us/library/fb6y0fyc.aspx 了解更多详情)
2.) 如 #1 所述,如果他们在同一个盒子上说话,请使用命名管道,除非有充分的理由不这样做。
3.)您能否提供更多详细信息来说明您的意思或您打算做什么?其中很多内容都是为您构建的,因此假设您熟悉实现异步方法和使用异步回调,简短的回答是肯定的,它与同步调用操作不同,但这是意料之中的。还是您的意思是 IsOneWay = true?如果是这种情况,调用机制是相同的,但可能存在许多其他问题(例如故障)
4.) 在同一个盒子上命名管道,否则为 BasicHttp(除非您需要 WS 的任何附加功能)。
关于wcf - 从另一个 WCF 服务调用时要考虑的事项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6909868/