Was ist der einfachste Weg, um eine Verbindung zu einem .NET remote-server-Objekt
-
09-06-2019 - |
Frage
Da mein client-code weiß alles, was es braucht, um über das remoting-Objekt, was ist der einfachste Weg, um eine Verbindung herzustellen?
Dies ist, was ich mache im moment:
ChannelServices.RegisterChannel(new HttpChannel(), false);
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(IRemoteServer), "RemoteServer.rem", WellKnownObjectMode.Singleton);
MyServerObject = (IRemoteServer)Activator.GetObject(
typeof(IRemoteServer),
String.Format("tcp://{0}:{1}/RemoteServer.rem", server, port));
Lösung
Die ersten beiden Zeilen in der server-side-code, für das Marshalling aus dem server-Objekt, ja?
In diesem Fall, ja, die Dritte Zeile ist die einfachste, die Sie bekommen können auf client-Seite.
Außerdem können Sie dazu dienen, zusätzliche server-seitige Objekte aus der MyServerObject Beispiel, wenn Sie öffentliche Accessoren für Sie IRemoteServer interface, so, Zugriff auf jene Objekte werden, die einfach eine Frage der Methode, anrufen oder Eigentum Zugriff auf Ihre wichtigsten server-Objekt, so dass Sie nicht haben zu verwenden Aktivator für jede einzelne Sache:
//obtain another marshalbyref object of the type ISessionManager:
ISessionManager = MyServerObject.GetSessionManager();
Andere Tipps
WCF.
Ich habe verwendet, IPC, bevor es eine WCF, und glauben Sie mir, IPC ist ein Bär.Und es ist nicht dokumentiert vollständig/korrekt.
Was ist der einfachste Weg, um eine Verbindung zu einem .NET remote-server-Objekt?WCF.