У меня есть класс (назовите его Container), который сериализуется и десериализуется с использованием DataContractSerializer. Класс содержит коллекцию других классов, каждый из которых наследует один и тот же базовый класс (назовите его ContentsBase), но который имеет различные производные классы. Приложению может быть передан сериализованный объект-контейнер, который содержит производные от ContentsBase объекты , реализация которых мне неизвестна или у которых нет доступа к , то есть скомпилированный код не доступен локально. Мне нужно десериализовать этот объект, "игнорируя" типы, о которых я не знаю (мне не нужно их использовать в обоих направлениях).
Можно ли как-нибудь это сделать, кроме как взять сериализованный XML и написать какой-то собственный код, чтобы просмотреть его и удалить неизвестные элементы перед десериализацией, или это мой единственный вариант?