Nếu bạn chỉ cần cập nhật nhiều thuộc tính, bạn có thể gọi Set trên trình tạo bản cập nhật và sau đó thực hiện cuộc gọi tiếp theo tới Set các phương pháp mở rộng. Bạn có thể sử dụng biểu thức lambda hoặc tên thuộc tính.
var update = Builders<Product>.Update
.Set(p => Name, "Name value")
.Set(p => Description, "Description value");
collection.UpdateOneAsync(filter, update, updateOptions);
Nếu bạn muốn cập nhật có điều kiện một số thuộc tính, bạn nên tạo một bộ sưu tập các bản cập nhật và sau đó kết hợp chúng:
var update = Builders<Product>.Update;
var updates = new List<UpdateDefinition<Product>>();
updates.Add(update.Set("propertyA", "add A update"));
if ()
updates.Add(update.Set("propertyX", "add X update"));
else
updates.Add(update.Set("propertyY", "add Y update"));
updates.Add(update.Set(p => p.PropertyB, "add B update"));
if ()
updates.Add(update.Set(p => p.PropertyZ, "add Z update"));
else
updates.Add(update.Set(p => p.PropertyP, "add P update"));
Collection.UpdateOneAsync(filter, update.Combine(updates), updateOptions);