Могу ли я использовать интерфейс для CAO в Remoting?

2

В CAO нет URI, поэтому указанный тип должен быть зарегистрирован на стороне сервера. Но если мой клиент и сервер взаимодействуют через один и тот же интерфейс (удаленный объект реализует интерфейс), то как я могу вызвать удаленный объект CAO с клиентской стороны. Это дает мне исключение, если я пытаюсь вызвать Acitvator.CreateInstance, используя тип интерфейса. например,

RemoteObject.IRemoteObject obj = (RemoteObject.IRemoteObject )Activator.CreateInstance(typeof(RemoteObject.IRemoteObject), null, url);

выше исключает код.

Теги:
remoting

2 ответа

0

Возможно, вам захочется рассмотреть технику, описанную в этой статье MSDN Реализация брокера с удалением .NET с использованием клиентских объектов. Этот шаблон использует SAO factory для создания CAO.

Я использовал эту технику на работе, и она работает хорошо.

0

Я не уверен, что смогу опубликовать решение вашей актуальной проблемы. Однако я могу объяснить, почему код, который вы опубликовали, выдает исключение. Вы пытаетесь создать экземпляр типа интерфейса. Этого не может быть сделано, интерфейс не содержит реализации. В общем, я считаю, что вы хотите создать тип удаленного объекта и передать его интерфейсу, который вы хотите использовать (при условии, что объект реализует интерфейс).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню