使用 Web API 从 MongoDB 更新数据

Updating Data From MongoDB using Web API

我有一个使用 Robomongo 工具在 MongoDB 中创建的数据库。我如何在 Web API 中通过其默认 POST、PUT、DELETE 方法在 ValuesControllers.cs 中更新这些数据?

数据库名称:StudentInfo 集合名称:学生

{
  _id : ObjectId(),
  name : "lqbal",
  department : "CSE",
  phone : "0194949402"
}

这是 POST 操作的示例。 WebApi 可以执行模型绑定,因此它可以从 POST 操作的主体中获取内容并将其绑定到 c# 实体 - 在本例中为 Student 对象。 这是 Request 正文的内容。

{
"name": "lqbal",
"department": "CSEGlobal",
"phone": "0194949402"
}

还要确保将 ReqestContent-Type 设置为 application/json,以便 WebApi 可以执行正确的模型绑定。

POST 操作中的代码然后必须在数据库中查找有问题的学生。一旦检索到 Student 对象,它就可以更新值,然后将对象保存回数据库。

 public void Post([FromBody]Student value)
        {
            var student = ((MongoCollection)collection).AsQueryable<Student>().First(c => c.name == value.name);
            student.department = value.department;
            student.phone = value.phone;
            collection.Save(student);

        }

PUT 操作的概念类似于此 POST 操作,只是创建了一个新的 Student 对象。

DELETE 操作也很简单,类似于 GET 操作 - 您只需要在查询字符串中传递要删除的记录的 ID 然后就可以了在动作控制器中删除它。

这里是 link 如何使用 mongo c# 驱动程序
删除文档 Mongo c# Driver - Remove an Existing Document