Какой самый простой способ подключения к объекту удаленного сервера .NET - PullRequest
1 голос
/ 25 августа 2008

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

Вот чем я сейчас занимаюсь:

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 ]

1 голос
/ 26 августа 2008

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

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

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

//obtain another marshalbyref object of the type ISessionManager:
ISessionManager = MyServerObject.GetSessionManager();
0 голосов
/ 25 августа 2008

WCF.

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

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

...