[英]Id field mapping is broken after ensureIndex using MongoDB C# driver
我有以下具有自定義ID字段的實體:
public class User : IEntity {
public string Id { get; set; }
}
if (!BsonClassMap.IsClassMapRegistered(typeof(User))) {
BsonClassMap.RegisterClassMap<User>(map => map.AutoMap());
}
它工作得很好,當我向集合添加新記錄時,會分配ID值。
但是,當我嘗試索引此集合中的任何其他字段時:
UserCollection.EnsureIndex(IndexKeys<User>.Ascending(p => p.Email),IndexOptions.SetUnique(true));
Id映射因為破壞,ID字段值在插入后為空,在集合中我看到生成的默認'_id'字段(我的'ID'的內容)。 有什么想法是什么問題? (我使用的是驅動程序1.8.3.9,mongo win32 2.4.5,NET 4.5)。 謝謝。
找到解決方案 在類映射之前調用UserCollection.EnsureIndex,導致問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.