Какой самый простой способ подключения к объекту удаленного сервера .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));
Это было полезно?

Решение

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

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

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

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

Другие советы

ВКФ.

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top