在其他文档中插入文档

时间:2011-05-31 13:40:31

标签: c# mongodb mongodb-.net-driver

如何使用mongodb在其他文档中插入文档?

我尝试过类似下面代码的内容,但我在设置字段中转换设置列表时遇到问题:

var settingViewModels = new[]{ setting };
var query = Query.EQ("Name", applicationName);
var update = Update.AddToSet("Settings", BsonArray.Create(setting));
db.Collection<Applications>().Update(query, update, UpdateFlags.Upsert, SafeMode.True)

当我将settingViewModels转换为BsonArray时出现错误:

.NET类型MyProject.SettingViewModel无法映射到BsonType.Array 参数名称:值

有什么想法吗?

感谢 约翰

1 个答案:

答案 0 :(得分:2)

如果要将设置项添加到Application集合的Settings []数组中,则应使用ToBsonDocument()命名空间中的MongoDB.Bson扩展方法:

var update = Update.AddToSet("Settings", setting.ToBsonDocument());

您无需创建BsonArray