.NET: канал и приемники между несвязанными доменами приложений - PullRequest
0 голосов
/ 07 декабря 2009

Я понимаю, что когда создается новый домен приложения, платформа создает каналы и неявно поглощает. Если этого не произойдет, вы не сможете создать объект в одном домене приложения и использовать прокси в другом.

(Это понимание; пожалуйста, поправьте меня, если я ошибаюсь.)

Кроме того, если объект маршалируется для целей удаленного взаимодействия, канал должен быть явно зарегистрирован, чтобы другие могли его использовать.

(верно?)

Здесь мое понимание нарушается. Сценарий:

Appdomain 1: удаленный сервер с маршалированным объектом, канал зарегистрирован.
Appdomain 2: Клиент, желающий использовать маршалированный объект.
Appdomain 3: для плагина. Создается из домена приложения 1 (сервера), создавая вышеупомянутые неявные каналы между доменами приложений 1 и 3.

Если объект создается в домене приложений 3 (плагин), но ссылка на прокси-сервер должна использоваться в домене приложений 2 (клиент), необходимы каналы и приемники. Как мне это сделать?

1 Ответ

0 голосов
/ 13 декабря 2009

Ответ - просто зарегистрировать канал в appdomain 3 (плагин appdomain). Я подумал, что между двумя доменами приложений должно быть более четкое подключение, но кажется, что, пока каждый домен приложения имеет зарегистрированный канал, инфраструктура удаленного взаимодействия обрабатывает все остальное.

...