I am working on two separate C# applications, and I'm trying to determine what is the best way to create a remote procedure call from one app to the other. Webservices are not necessary in this case because the开发者_如何学运维 applications will always run on the same machine (Windows OS). What types of RPC are available in C# and .net that I can use?
I would recommend WCF with NetNamedPipeBinding for interprocess communication. Here's an example.
There's also Remoting which has been around since .NET 1.0 but becoming obsolete in favor of WCF.
There are several options available to you here. The most prominent though are
- .Net Remoting
- Windows Communication Foundation (WCF)
Both can be used for communication between processes on a remote or local machine.
I would recommend .NET Remoting configured with IPC channels, in my opinion this is the fastest way of communication between applications running on the same PC.
Try Protobuffers
over Win32 RPC
networkComms.net provides very general RPC functionality, see RPCExample.cs.
精彩评论