Передача «не сериализованного» объекта другому домену приложения без сериализации / десериализации (C #) - PullRequest
0 голосов
/ 09 мая 2019

Каков наилучший способ передачи «не сериализованного» объекта другому домену приложения без Серилизации / десериализации?

Более подробно: я собираюсь вызвать функцию (из внешней сборки / плагина) в новом домене приложения и передать результат главному домену приложения (основной программе). но (к сожалению) тип результата не сериализуем и поэтому я столкнулся с SerializationException

Ограничения:

несериализованный тип находится во внешней сборке / dll. Поэтому я не могу пометить его как сериализуемый с атрибутом.

1 Ответ

1 голос
/ 09 мая 2019

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

Поскольку этот тип также не имеет ограниченных опций:

  1. Выполните обработкув удаленном домене приложения.
  2. Выполните пользовательскую сериализацию для передачи нужных вам данных (не объекта).Например, скопируйте значения в сериализуемый класс DTO или используйте библиотеку сериализатора.
...