我打算建立一个即时消息 现在我必须决定如何实现网络。 到目前为止,我只使用套接字(TCP或UDP)。现在我听说过RMI(在Java中)并希望在我的C#-Chatapplication中使用它。
有.NET Remoting和WCF。我认为使用套接字构建即时消息是不是一个好主意,对吧?但那应该用吗? .NET Remoting还是WCF? .NET Remoting似乎是较旧的技术,类似于Java RMI。我读到.NET Remoting比WCT更快(2007年的文章)。
我应该将哪种技术用于即时消息?我想从richtextbox和内嵌图像发送格式化文本。 此外,我想从聊天客户端交换文件到聊天客户端。
对于.NET Remoting,我找到了一个使用
的教程ChannelServices.RegisterChannel(myChan);
但这标志着已经过时了。 .NET Remoting是一种过时的技术吗? 是否可以使用WCF或.NET Remoting发送图像和文件,或者套接字是更好的选择吗?
我读到WCF是网络技术(Web服务,远程处理等)的集合,但如果我搜索WCF和远程方法调用,我只会获得Web服务的示例......
BTW:后来,我想用ASP.NET实现我的即时消息的Web客户端。网络(WCF / Remoting)是否有一些限制?
谢谢:)
答案 0 :(得分:1)
对于您的即时消息解决方案,我建议 WCF P2P 这里有一篇文章可以帮助您Peer-to-Peer Programming with WCF,这里是codeproject上的p2p示例。
答案 1 :(得分:1)
仅为向后兼容性as of .NET 3.0维护.NET Remoting。因此,如果您要使用.NET 3.0或更高版本,请使用WCF。
为了立即使用,我建议使用NetTcpBinding
。然后,您可以使用下面的图表选择更合适的绑定。
最后,要了解WCF,请参阅this SO question。