Я пишу плагин для приложения, которое предоставляет абстрактный тип базового класса и из которого должен быть получен мой класс.Когда он сохраняет мой созданный экземпляр класса для последующего извлечения, приложение использует свой сериализатор XML для сериализации класса, не раскрывая мне сериализатор.
Очевидно, что при попытке сериализации моего класса сериализатор XML выбрасываетSystem.InvalidOperationException
исключение, с сообщением
"Тип YourDerivedType не ожидался. Используйте атрибут XmlInclude или SoapInclude, чтобы указать типы, которые статически не известны."
Поскольку у меня нет доступа к базовому классу, я не могу украсить его атрибутом XmlInclude
, и поскольку приложение использует собственный сериализатор, я не могу использовать new XmlSerializer
, передать свой производный типв его конструктор, а затем использовать этот XmlSerializer для сериализации.
Есть предложения о том, как (или нужно ли!) получить сериализацию для моего класса и исключить это исключение?