本地远程过程调用有哪些方法?
我正在研究两个独立的C#应用程序,我正在尝试确定从一个应用程序到另一个应用程序创建远程过程调用的最佳方法。 在这种情况下,Web服务不是必需的,因为应用程序将始终在同一台计算机上运行(Windows操作系统)。 我可以在C#和.net中使用哪些类型的RPC?
我建议WCF使用NetNamedPipeBinding进行进程间通信。 这是一个例子 。
还有Remoting,它自.NET 1.0以来一直存在,但已经过时,有利于WCF。
这里有几种选择。 最突出的是
- .Net Remoting
- Windows Communication Foundation(WCF)
两者都可用于远程或本地计算机上的进程之间的通信。
我建议配置IPC通道的 .NET Remoting,在我看来,这是在同一台PC上运行的应用程序之间最快的通信方式。
networkComms.net提供了非常通用的RPCfunction,请参阅RPCExample.cs 。
尝试使用Win32 RPC上的Protobuffers