我有以下数据结构:
db.objects
{
"_id" : 1,
"name" : "object name",
"type" : "rectangle",
"area" : {
"position_x1" : 0,
"position_y1" : 0,
"position_x2" : 0,
"position_y2" : 0
},
"dimension" : {
"width" : 0,
"height" : 0
}
}
我想分别为"area"
= 1的对象集合中的文档替换/更新"dimension"
和"_id"
。
[?]请告诉我如何使用MongoDB C#驱动程序。
答案 0 :(得分:2)
这是对$set
运算符的一种非常简单的使用。所以更新表格基本上是:
db.objects.update(
{ "_id": 1 },
{
"$set": {
"area": { /* all of your object properties */ },
"dimension": { /* all of your object properties */ }
}
}
)
或者你可以单独进行:
db.objects.update(
{ "_id": 1 },
{
"$set": {
"area.position_x1": 1,
"area.position_y1": 1,
"dimension.width": 1
}
}
)
根据您的实际需要。
或者作为带有Builder的C#类型代码:
var query = Query.EQ("_id",1);
var update = Update.Set("area.position_x1", 1)
.Set("area.position_y1", 1)
.Set("dimension.width", 1);
MongoCollection<Class>.update(query, update);