Docs 菜单
Docs 主页
/ / /
C#/.NET
/

更新文档

在此页面上

  • 例子
  • 预期结果
  • 详细信息
  • API 文档

您文档使用更新() MongoCollection对象上的方法。此方法需要一个查询过滤(指定要更新哪个文档)和一个更新声明(指定驾驶员应对与查询过滤匹配的第一个文档进行的更改)。

注意

UpdateOne() 方法仅更新与过滤器匹配的第一个文档。要更新多个文档,请使用 UpdateMany() 方法。

提示

您可以向 UpdateOne() 方法传递 UpdateOptions 的实例,以自定义其行为。

以下示例使用Buildersrestaurants集合中名为“Bagels N Buns”的第一个文档的name更新为“2 Bagels 2 Buns”。

选择 AsynchronousSynchronous 标签页,查看相应的代码。

const string oldValue = "Bagels N Buns";
const string newValue = "2 Bagels 2 Buns";
var filter = Builders<Restaurant>.Filter
.Eq(restaurant => restaurant.Name, oldValue);
var update = Builders<Restaurant>.Update
.Set(restaurant => restaurant.Name, newValue);
return await _restaurantsCollection.UpdateOneAsync(filter, update);

有关 UpdateOneAsync() 操作的完全可运行示例,请参阅 UpdateOneAsync 示例

const string oldValue = "Bagels N Buns";
const string newValue = "2 Bagels 2 Buns";
var filter = Builders<Restaurant>.Filter
.Eq(restaurant => restaurant.Name, oldValue);
var update = Builders<Restaurant>.Update
.Set(restaurant => restaurant.Name, newValue);
return _restaurantsCollection.UpdateOne(filter, update);

有关 UpdateOneAsync() 操作的完全可运行示例,请参阅 UpdateOne 示例

运行上述任一完整示例后,每次调用 UpdateOne() 都会将以下内容写入控制台:

Updated documents: 1

提示

UpdateOne() 返回 updateResult 对象。

如需了解有关更新文档的更多信息,请参阅“修改文档”指南。

如需了解有关使用生成器的更多信息,请参阅生成器操作

后退

插入多个文档