MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongodb - inclure ou exclure certains éléments avec le pilote c#

Mise à jour : Avec la nouvelle version du pilote (1.6+), vous pouvez éviter le codage en dur des noms de champs en utilisant plutôt linq :

var users = usersCollection.FindAllAs<T>()
                           .SetFields(Fields<T>.Include(e => e.Id, e => e.Name));

Vous pouvez le faire via SetFields méthode du curseur mongodb :

var users = usersCollection.FindAllAs<T>()
                 .SetFields("_id") // include only _id
                 .ToList();

Par défaut SetFields inclut des champs spécifiés. Si vous devez exclure certains champs, vous pouvez utiliser :

var users = usersCollection.FindAllAs<T>()
                 .SetFields(Fields.Exclude("_id")) // exclude _id field
                 .ToList();

Ou vous pouvez les utiliser ensemble :

var users = usersCollection.FindAllAs<T>()
                 .SetFields(Fields.Exclude("_id")   // exclude _id field
                                  .Include("name")) // include name field
                 .ToList();