.NET リモート サーバー オブジェクトに接続する最も簡単な方法は何ですか?

StackOverflow https://stackoverflow.com/questions/25982

質問

クライアント コードがリモーティング オブジェクトに関して必要なことをすべて知っているとすると、リモーティング オブジェクトに接続する最も簡単な方法は何でしょうか?

これが私が現時点でやっていることです:

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));
役に立ちましたか?

解決

最初の 2 行は、サーバー オブジェクトをマーシャリングするためのサーバー側コードにあります。

その場合、はい、3 行目はクライアント側で取得できる最も単純なものです。

さらに、追加のサーバー側オブジェクトを MyServerObject たとえば、それらのパブリック アクセサーを IRemoteServer したがって、これらのオブジェクトへのアクセスは、メイン サーバー オブジェクトのメソッド呼び出しまたはプロパティ アクセスだけで済むため、すべてのことにアクティベーターを使用する必要はありません。

//obtain another marshalbyref object of the type ISessionManager:
ISessionManager = MyServerObject.GetSessionManager();

他のヒント

WCF。

私は WCF が存在する前に IPC を使用したことがありますが、信じてください、IPC はクマです。そして、それは完全に/正確に文書化されていません。

.NET リモート サーバー オブジェクトに接続する最も簡単な方法は何ですか?WCF。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top