2008-08-25 9 views
1

Учитывая, что мой код клиента знает все, что ему нужно, о удаленном объекте, какой самый простой способ подключиться к нему?Каков самый простой способ подключения к удаленному серверному объекту .NET

Это то, что я делаю в данный момент:

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)); 

ответ

1

Первые две строки находятся в серверном коде для маршалинга объекта сервера, да?

В этом случае, да, третья строка является самой простой, которую вы можете получить на стороне клиента.

Кроме того, вы можете служить дополнительные серверные объекты из экземпляра по MyServerObject, если включить общественные аксессор для них в интерфейсе IRemoteServer, поэтому доступ к этим объекты становятся простым делом вызовов методы или имущества доступ к вашему основному серверному объекту, поэтому вам не нужно использовать активатор для каждой отдельной вещи:

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

WCF.

Я использовал IPC до того, как появился WCF, и поверьте, IPC - это медведь. И он не документирован полностью/правильно.

Каков самый простой способ подключения к удаленному серверному объекту .NET? WCF.