我有MongoCollection<myObject>
。
集合中的某些“myObject”包含另一个对象(比如说“myObject2”),其中一些包含一个继承自“myObject2”(“myInheritedObjet”)的对象
现在我想从集合中反序列化Items,但是我收到一个错误,因为“myObject2”没有“myInheritedObjet”的某些属性。
反序列化“myobject”属性时发生错误:元素 “名称”与“myobject”类的任何字段或属性都不匹配
例如:
MongoCollection<Person>
Person
string name;
Animal[] pets;
Animal
string AType;
Dog : Animal
string Name;
如果有人有狗,这个人不能反序列化,因为动物类型没有“名字”。
我该如何解决? 感谢。
答案 0 :(得分:1)
好的,我发现了这个:deserializing polymorphic classes
我需要做的就是将基类映射到子类:
[BsonKnownTypes(typeof(subclass)]
class BaseClass {...}