我将构建一个即时消息程序,现在我必须决定如何实现网络。到目前为止,我只使用套接字(TCP或UDP)。现在,我听说了RMI (用Java编写),并希望在我的C#-Chatapplication应用程序中也能使用它。
有.NET远程处理和WCF。我认为使用Sockets构建即时消息传递程序不是一个好主意,对吧?.NET远程处理似乎是一种较老的技术,类似于Java RMI。我读到.NET远程处理比WCT更快(2007年的文章)。
我应该为我的即时消息程序使用哪种技术?我想从richtextbox和内联图像中发送格式化的文本。此外,我想在聊天客户端之间交换文件。
对于.NET远程处理,我找到了一个教程,它使用
ChannelServices.RegisterChannel(myChan);但这被标记为已过时。.NET远程处理是一种过时的技术吗?是否可以使用WCF或.NET远程处理来发送图像和文件?套接字是更好的选择吗?
我读到WCF是网络技术(Web服务、远程处理等)的集合。但是如果我搜索WCF和远程方法调用,我只能得到Web服务的示例...
顺便说一句:稍后,我想用ASP.NET为我的即时通讯工具实现一个网络客户端。网络有什么限制吗?
谢谢您:)
发布于 2010-12-12 22:19:20
维护.NET远程处理只是为了向后兼容as of .NET 3.0。因此,如果您打算使用WCF3.0或更高版本,请使用.NET。
如果您想立即使用,我建议您使用NetTcpBinding。然后,您可以使用下面的图表选择更合适的绑定。

。
最后,要了解WCF,请参阅this SO question。
发布于 2010-12-12 22:16:08
对于您的即时消息解决方案,我建议您使用WCF P2P。这里是一篇帮助您入门Peer-to-Peer Programming with WCF的文章,这里是p2p on codeproject的一个示例。
https://stackoverflow.com/questions/4421963
复制相似问题