Я не являюсь пользователем NHibernate; Я пишу библиотеку утилиты сериализации. Пользователь зарегистрировал запрос функции, чтобы я работал с прокси-классами NHibernate, рассматривая их так же, как и фактический тип. В настоящий момент мой код обрабатывает их как неожиданное наследование и бросает исключение.
Код не будет знать заранее о NHibernate (включая ссылку, но я не уверен в рефлексии; -p)
Существует ли надежный/гарантированный способ обнаружения таких типов прокси? По-видимому, DataContractSerializer
справляется с этим, поэтому я надеюсь, что это что-то довольно простое. Возможно, какой-то интерфейс или [attribute]
украшение.
Кроме того, во время десериализации; на данный момент я бы создал оригинальный тип (а не тип NHibernate). Это хорошо для настойчивости? Или требуется тип прокси? Если последний; что требуется для создания экземпляра типа прокси?