Ошибка: «Deserializer не имеет знания о любом типе, который отображает этот контракт»?
-
05-10-2019 - |
Вопрос
У меня есть класс Foo отмечен [Serializable]
и реализация ISerializable
. Отказ Я пытаюсь сериализовать его через DataconTractserializer. В GetobjectData я делаю это:
info.AddValue("Test", new[] { 1,2,3});
Это терпит неудачу с:
Элемент «: Test» содержит данные «http://schemas.microsoft.com/2003/10/serialization/arrays] Договор данныхРарайофинта". Deserializer не имеет знания о любом виде, который отображает этот договор. Добавьте тип, соответствующую «ArrayOfint» в список известных типов - например, с использованием атрибута SevelyTyPeattribute или путем добавления его в список известных типов, переданных в DataconTractserializer.
Я пытался пройти knownTypes
Arg к конструктору DataContractserializer - не помог.
Решение
Прохождение А. knownTypes
ARG к конструктору DataContractserializer будет нет помощь. Вместо этого добавить [KnownType(typeof(int[]))]
к самому классу фу.