C# 是否可以使用WCF通过TCP/IP与外部系统通信?
我们正在构建一个通过TCP/IP使用与外部系统交互的系统。我曾使用WCF在客户端和服务器之间进行通信,在服务器和客户端上我都有控制权,但从未与外部基于TCP/IP的系统通信。这在WCF中是可能的吗?如果是这样,社区能否为我提供链接,让我开始并朝着正确的方向前进C# 是否可以使用WCF通过TCP/IP与外部系统通信?,c#,.net,wcf,tcp,fix-protocol,C#,.net,Wcf,Tcp,Fix Protocol,我们正在构建一个通过TCP/IP使用与外部系统交互的系统。我曾使用WCF在客户端和服务器之间进行通信,在服务器和客户端上我都有控制权,但从未与外部基于TCP/IP的系统通信。这在WCF中是可能的吗?如果是这样,社区能否为我提供链接,让我开始并朝着正确的方向前进 不幸的是,我没有比上面提供的更多的信息,因为我们仍处于早期规划阶段。我们所知道的是,我们有一个外部供应商,其系统将通过TCP/IP与我们的系统通信。我们希望以此为学习机会,学习WCF 我认为这是不可能的,至少设置起来并不容易,因为你不知道
不幸的是,我没有比上面提供的更多的信息,因为我们仍处于早期规划阶段。我们所知道的是,我们有一个外部供应商,其系统将通过TCP/IP与我们的系统通信。我们希望以此为学习机会,学习WCF 我认为这是不可能的,至少设置起来并不容易,因为你不知道另一端的通信协议,除了TCP和accept FIX标签 为什么不在WCF应用程序中打开TCP连接套接字呢。这应该以更简单的方式实现 我想是的。我有一个系统,我几乎得到了工作,这是应该做的几乎完全一样(WCF通过HTTP从互联网)。服务器提供商似乎不想允许它,因此您需要在该端拥有正确的权限才能使其正常工作
上拍:我不明白为什么不可以。可能吗?可能是的,但这需要一些工作 首先,您需要编写一个自定义的WCF传输通道来处理基于TCP/IP的协议的细节(即,您需要编写所有套接字处理代码并将其挂接到WCF通道模型中)。这是因为WCF中的TCP通道不适用于此类工作,而是使用一种相对专有且未记录的有线协议 我对FIX还不太熟悉,无法说它有多复杂,但在编写WCF频道时会遇到一些问题,而在该领域编写文档也不是很好 您需要处理的第二部分是消息编码。对于WCF,所有消息都是XML。也就是说,一旦消息传递到WCF堆栈,它就必须在运行时看起来像一个XML信息集。修复程序不使用XML(afaik),所以您需要对其进行一些调整 有两种方法可以绕过它:
希望这有帮助:)不是真的-Ms没有让TCP/IP连接处理程序与非WCF服务对话,他们假设您会编写一个Web服务来实现这一点
这是讨论过的。为什么不使用套接字而不使用WCF呢?如果我使用套接字,我看不出WCF有什么帮助。也许我不明白插座是什么。你指的是TCP/IP套接字吗?确切地说,我根本不会使用wcf,但我认为他拥有的不仅仅是他指定的内容,因此使用wcf实现SOA模型。我认为OP应该提供更多关于他的问题的信息+1。。。对于那些想将WCF和TCP/IP与套接字混合使用的人来说,这是一个好问题。我们听说WCF可以通过多种类型的绑定进行通信,而且根本不需要更改编程模型。但是,如果我们只能在控制两个连接系统的系统上使用WCF,可能我们误解了WCF的价值