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

làm thế nào để kiểm tra xem một trường có tồn tại trong một tài liệu cụ thể Mongodb bằng cách sử dụng C # hay không?

Bạn có thể thử những cách sau:

  1. Sử dụng Try / Catch như sau:

    var document = Bundle.Collection().Find(filter); // here is your BsonDocument
    try
       {
          document["fieldNameToCheck"] // if field doesn`t exist it throws KeyNotFoundException. If there are nested objects just follow the pattern: document["fieldName"]["fieldNestedToCheck"]
       }
    catch (Exception ex) when (ex is KeyNotFoundException)
       {
          // your logic for "the field wasn`t found in the document" case
       } 
    
  2. Sử dụng .Contains (), như sau:

    var exists = document.Contains("fieldNameToCheck");// if field exists it returns true
    // If you need to check the nested fields, you can do as follows:
    var nestedExists = document["fieldName"].ToBsonDocument().Contains("fieldNameToCheck"); // or:
    var nestedExists = document["fieldName"]["nestedFieldNameNextLevel"].ToBsonDocument().Contains("fieldNameToCheck");  // and so on...      
    
  3. Và bằng cách sử dụng TryGetElement, bạn cũng có thể nhận được phần tử này:

    Phần tử
    BsonElement element; // it will contain found element if true for next line
    var exists =  document.TryGetElement("fieldNameToCheck", out element); // returns true if element is found
    

Hy vọng nó sẽ giúp ích




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Truy vấn chỉ tìm kiếm MongoDB trong những giờ cụ thể

  2. kết nối mongodb được tạo trong mongolab thông qua ứng dụng java

  3. Cách loại trừ một số trường khỏi tài liệu

  4. Nhập dữ liệu csv dưới dạng mảng trong mongodb bằng mongoimport

  5. Có thể chuyển số bị chia và số bị chia của toán tử truy vấn $ mod của MongoDB không?