我试图插入嵌套实体,它创建了嵌套实体但它的id仍为null。 我无法在其他任何地方找到答案或例子。请帮帮我。
我做了什么?
我有2个对象
menu
{
Id
items[]
}
Item
{
Id
}
我用
映射了两个对象的idmap.AutoMap();
map.SetIdMember(CreateIdMapper(map.GetMemberMap(p => p.Id)));
protected BsonMemberMap CreateIdMapper(BsonMemberMap bsonMemberMap)
{
return bsonMemberMap
.SetIdGenerator(StringObjectIdGenerator.Instance)
.SetSerializer(CreateStringSerializer());
}
protected StringSerializer CreateStringSerializer()
{
return new StringSerializer(BsonType.ObjectId);
}
这是更新
var filter = Builders<Menu>.Filter.Eq(x => x.Id, menu.Id);
var update = Builders<Menu>.Update.AddToSet(x=>x.Items, item);
await m_mongoClientProvider.GetCollection<Menu>(MongoCollection.Menu)
.UpdateOneAsync(filter, update);
我做错了什么? 感谢