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

mongodb c # API V2:Sự khác biệt giữa ReplaceOne và FindOneAndReplace

Tài liệu tiết lộ một chữ ký phương pháp khác:

ReplaceOne :

ReplaceOneResult ReplaceOne(
    FilterDefinition<TDocument> filter,
    TDocument replacement,
    ReplaceOptions options = null,
    CancellationToken cancellationToken = null
)

FindOneAndReplace :

TProjection FindOneAndReplace<TProjection>(
    FilterDefinition<TDocument> filter,
    TDocument replacement,
    FindOneAndReplaceOptions<TDocument, TProjection> options = null,
    CancellationToken cancellationToken = null
)

Đáng chú ý nhất là kiểu trả về và tham số tùy chọn khác nhau.

Trong khi ReplaceOne trả về một ReplaceOneResult , FindOneAndReplace trả về một tài liệu (lưu ý thuộc tính ReturnDocument trong các tùy chọn).

ReplaceOptions khá hạn chế so với FindOneAndReplaceOptions mã> , ví dụ. cái trước không cung cấp sắp xếp để cung cấp cho bạn quyền kiểm soát tài liệu nào sẽ là tài liệu đầu tiên trong số các tài liệu phù hợp trong bộ sưu tập. Điều này không quan trọng nếu bạn lọc dựa trên ID, nhưng nếu bạn muốn thay thế tài liệu mới nhất, tùy chọn sắp xếp rất hữu ích.

(Lưu ý:Cá nhân tôi tìm thấy tài liệu ở đây https:// docs.mongodb.com/manual/reference/method/db.collection.replaceOne/ và đây https://docs.mongodb.com/manual/ tham chiếu / method / db.collection.findOneAndReplace / hữu ích hơn nhiều, vì họ giải thích cách sử dụng chi tiết hơn và cũng cung cấp một số ví dụ. Nhưng tôi không biết nó khớp với trình điều khiển MongoDB C # chặt chẽ như thế nào.)




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. truy vấn mongoDB để truy xuất từ ​​bộ sưu tập mảng lồng nhau

  2. Cách tìm tài liệu phù hợp với nhiều tiêu chí

  3. Cách hoạt động của cursor.observe và cách tránh nhiều trường hợp đang chạy?

  4. Mongodb 3.0 java insertOne

  5. Không thể kết nối máy chủ mongodb khi sử dụng NodeJS