【发布时间】:2019-06-21 22:04:42
【问题描述】:
场景
我在 mongodb 中有一个对话文档,我必须将消息添加到消息数组并更新上次发送日期,请参见下面的架构。
{
"_id" : NumberInt(5),
"CurrentOwnerId" : NumberInt(9),
"LastSent" : ISODate("2019-06-21T11:57:32.861+0000"),
"Messages" : [
{
"_id" : BinData(3, "nuC1iYTKtkGzSuv7pVHsKg=="),
"MessageContent" : "Hi There",
"Status" : "Pending",
"DateSent" : ISODate("2019-06-21T11:57:32.861+0000"),
"Method" : "Slack"
}
]
}
我的问题
简单地读出整个文档(使用BsonId)并通过c#整体更新文档会更有效吗,即将我的消息推送到数组并设置最后发送的日期,然后将文档更新为使用驱动程序的整体或使用 $set 和 $push 运算符对数据库进行两次调用以实现我想要做的事情。
【问题讨论】:
标签: c# mongodb mongodb-.net-driver