MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Verwenden von SetFields mit MongoDB C#-Treiber 2.0

Sie müssen die Projection verwenden Methode auf IFindFluent (was Find ist und Projection zurück):

var findFluent = Collection.Find(query).Projection(Fields<MealPlan>.Exclude (plan => plan.Meals))

Nun würde dies schließlich einen Cursor von BsonDocument erzeugen s, da es nicht weiß, wie die Projektion aussieht. Sie können die generische Projection aufrufen stattdessen diesen Typ hinzuzufügen:

var findFluent = Collection.Find(query).Projection<MealPlan>(Fields<MealPlan>.Exclude (plan => plan.Meals))

Allgemeiner ausgedrückt (was weniger relevant ist, wenn Exclude verwendet wird ), können Sie Felder auch mit einem Lambda-Ausdruck angeben:

var findFluent = Collection.Find(query).Projection(plan => plan.Meals)