Различные источники объясняют, что
Когда объект является производным от MarshalByRefObject, ссылка на объект будет передаваться из одного домена приложения в другой, а не сам объект. Когда объект отмечен [Сериализуемый], объект будет автоматически сериализован, перенесен из одного домен приложения в другой, а затем десериализовали, чтобы создать точная копия объекта во втором домене приложения.Тогда обратите внимание что пока MarshalByRefObject передает ссылку, [Serializable] вызывает копирование объекта. [источник]
Я разрабатываю свое первое приложение, использующее домены приложений, и мне интересно, что происходит, когда вы помещаете ссылки на MarshalByRefObjects
внутри сериализуемых объектов, которые не реализуют MarshalByRefObject, потому что пока Я не могу найти никакой документации по этому вопросу.
Например, что произойдет, если я попытаюсь вернуть List
, где MBR: MarshalByRefObject
через границу домена приложения? Могу ли я получить копию списка List
, где каждый MBR
является TransparentProxy
для исходного объекта? А есть ли документация о технических деталях смешивания двух механизмов?