MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

как да проверя дали поле съществува в конкретен документ Mongodb с помощта на C#?

Можете да опитате следното:

  1. Използвайте Try/Catch както следва:

    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. Използвайте .Contains(), както следва:

    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. И като използвате TryGetElement, можете допълнително да получите този елемент:

    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
    

Надяваме се, че помогна




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Вземете индекс на даден елемент в полето на масив в MongoDB

  2. MongoDB $toLong

  3. Какъв е най-добрият начин да направите ajax пагинация с MongoDb и Nodejs?

  4. Защо laravel връща празен масив за връзка има много?

  5. NodeJS Mongo - Mongoose - Име на динамична колекция