Mongo C#ignore属性

Ale*_*lex 14 c# driver mongodb

我正在使用官方MongoDB驱动程序的v0.9,我正在尝试阅读一个集合.我在数据库中有一个字段,我不想读入我的对象,但我收到以下错误.

"意想不到的元素:网络"

该集合在数据库中看起来像这样

Merchants
 - _id
 - Name
 - Description
 - Url
 - Network
Run Code Online (Sandbox Code Playgroud)

当我将它读入C#时,我想创建一个名为Merchant的对象,它具有除"Network"之外的所有相同属性.我该怎么做呢?

Mar*_*wen 22

BSON序列化器上有一个"IgnoreExtraElements"选项,您可以启用该选项来防止该错误.

将其设置为您Merchant班级的属性:

[BsonIgnoreExtraElements]
public Merchant {
    // fields and properties
}
Run Code Online (Sandbox Code Playgroud)

或者在代码中,如果你正在使用类映射:

BsonClassMap.RegisterClassMap<Merchant>(cm => {
    cm.AutoMap();
    cm.SetIgnoreExtraElements(true);
});
Run Code Online (Sandbox Code Playgroud)

  • 有没有办法忽略所有实体上的额外元素,而不必分别为每个实体指定它? (2认同)
  • 我在stackoverflow中找到了我自己的问题的解决方案:http://stackoverflow.com/questions/12944520/implement-for-all-classes-bsonignoreextraelements (2认同)