MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm cách nào để cập nhật mảng lồng nhau sâu với C # MongoDB.Driver?

Lý do tại sao nó không hoạt động với nhân '-1' vì nó giống với toán tử vị trí $ Trong tài liệu chính thức về chủ đề "Mảng lồng nhau", chúng ta có thể xem tiếp theo:

Từ MongoDb 3.6 có các tính năng mới cho phép hoạt động với các mảng lồng nhau.

Toán tử tất cả vị trí

Toán tử vị trí được lọc :

Vì vậy, bằng cách sử dụng toán tử vị trí được lọc, mã của tôi bây giờ trông giống như sau:

await coll.UpdateOneAsync(x => x.StoreGuid == storeGuid,
    Builders<StoreModel>.Update.Set("configGroup.$[g].config.$[c].value", model.Value),
    new UpdateOptions
    {
        ArrayFilters = new List<ArrayFilterDefinition>
        {
            new BsonDocumentArrayFilterDefinition<BsonDocument>(new BsonDocument("g.groupName", groupName)),
            new BsonDocumentArrayFilterDefinition<BsonDocument>(new BsonDocument("c.key", model.Key))
        }
    });



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. ValueError:Lỗi dữ liệu bổ sung khi nhập tệp json bằng python

  2. Cách tốt nhất để lưu trữ ngày sinh trong MongoDB là gì?

  3. Cách hợp nhất tài liệu khi nhập tệp vào MongoDB

  4. Chỉ thêm Unique vào mảng và cập nhật số lượng trường

  5. Tổng hợp MongoDB:Tính Tổng số đang chạy từ tổng của các hàng trước đó