1

我正在使用 C# 和 mongodb 官方驱动程序。使用 BsonClassMap 类映射我的实体时遇到问题。这是一些示例代码:

BsonClassMap.RegisterClassMap<Article>(cm =>
{
      cm.AutoMap();
      cm.GetMemberMap(c => c.Title).SetElementName("title").SetDefaultValue("abc");
}

当我将它保存到 db 时,我总是在标题字段中得到一个空值,而不是预期的“abc”。我试过枚举类型并遇到同样的问题 - 我哪里出错了?

4

1 回答 1

5

如果要反序列化的文档没有该字段或属性的值,则在反序列化期间使用默认值为字段或属性分配值。

如果您在内存中为 Title 属性创建一个空值的对象,那么空值将存储在数据库中。仅仅因为 Title 为 null 并不意味着在保存文档时它将被替换为默认值。

于 2012-04-05T04:19:45.627 回答