Vererbung in MongoDb: Anfordern von Instanzen eines definierten Typs
So habe ich die Vererbung in Entity Framework (POCO) verwendet:
<code>ctx.Animals // base class instances (all instances) ctx.Animals.OfType<Cat> // inherited class Cat's instances only ctx.Animals.OfType<Dog> // inherited class Dog's instances only </code>
Dies ist der einzige ähnliche Weg, den ich in MongoDb gefunden habe (MongoDb Referenz):
<code>var query = Query.EQ("_t", "Cat"); var cursor = collection.FindAs<Animal>(query); </code>
Beachten Sie, dass ich mich im letzteren Fall mit dem Diskriminator ("_t") befassen und meinen Klassennamen fest codieren muss, was nicht ganz praktisch ist und schrecklich aussieht. Wenn ich die Abfrage verpasse, wurde beim Versuch der Aufzählung eine Ausnahme gemeldet. Habe ich etwas verpasst Mein Vorschlag war das Dokument Db, in dem Objekte so gespeichert werden, wie sie sind, und das die Vererbung leicht handhaben sollte.