C# Mongodb阵列更新

C# Mongodb阵列更新,c#,mongodb,nosql,C#,Mongodb,Nosql,我有以下mongodb json。我想用文档_id:id1将文档中产品_id:2的价格从4更新到5 有人能指导我如何在mongodb或使用c语言来实现这一点吗 { "_id": "id1", "products": [ { "product_id": "pr1", "price":1, "qty":5 }, { "product_id":

我有以下mongodb json。我想用文档_id:id1将文档中产品_id:2的价格从4更新到5 有人能指导我如何在mongodb或使用c语言来实现这一点吗

{
    "_id": "id1",
    "products": [
        {
            "product_id": "pr1",
            "price":1,
            "qty":5
        },
        {
            "product_id": "pr2",
            "price":4,
            "qty":10
        },
        {
            "product_id": "pr3",
            "price":8,
            "qty":9
        }
    ]
}

从mondodb站点下载C mongodb驱动程序

var collection = DataBase.GetCollection<MyProducts>("products");
var query = Query<MyProduct>.Where(p => (m.productID == "pr2"));

var product = collection.FindOne(query);
product.Price = 5;
collection.Save(product);

在mongo db中使用.update函数或使用linq将对象拉出,如:

 var query = (from c in Collection.AsQueryable<T>() where c.Id == Id select c).First<T>();
相应地调整上述变量


然后更改该对象的内容,然后使用Collection.Saveobj保存该对象。这将重新写入整个对象。看这里:

数据库是new mongoclientur.GetServerany light on和m.productID?这是一个表示mongodb实体的类。根据示例中的json创建一个。这样,您就可以使用数据创建类实例,并且可以将数据读/写到mondo?你做了什么?什么是例外?请参阅C驱动程序手册,以下是您需要的: