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

MongoDB .NET ne génère pas de _id lors de l'upsert

Et bien sûr, je trouve la réponse immédiatement après avoir posté la question. A partir de cette réponse, la solution est d'ajouter un [BsonIgnoreIfDefault] attribut à l'ID. Dans l'exemple de la question, ce serait :

public class MongoObject
{
    [BsonId(IdGenerator = typeof(StringObjectIdGenerator))]
    [BsonRepresentation(BsonType.ObjectId)]
    [BsonIgnoreIfDefault]    // <--- this is what was missing
    public string MongoID { get; set; }

    public int Index { get; set; }
}