【发布时间】:2018-03-02 11:47:02
【问题描述】:
我正在从 Mongo Driver 1.x 迁移到 2.x,遇到了一个问题,即 Mongo 不能简单地为文档生成 ID。
实体:
public sealed class History
{
public string Id { get; set; }
public long BusinessId { get; set; }
public ShowcaseVersion Version { get; set; }
}
映射:
cm.AutoMap();
cm.MapIdMember(c => c.Id)
.SetIgnoreIfDefault(true)
.SetSerializer(new StringSerializer(BsonType.ObjectId))
.SetIdGenerator(StringObjectIdGenerator.Instance)
插入:
Collection.InsertOne(new History
{
BusinessId = businessId,
Version = version
});
结果:
E11000 重复键错误集合:showcases.History index:id 复制键:{ : null }
【问题讨论】:
-
在公共ObjectId Id中转公共字符串Id?有帮助吗?
标签: c# .net mongodb mongodb-.net-driver