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

Wie führt man ein Upsert mit MongoDB 2.0 durch?

Übergeben Sie eine Instanz von UpdateOptions als Optionsparameter in UpdateOneAsync(filter, update, options) , z. B.:

collection.UpdateOneAsync(p => p.Id == user.Id, 
    Builders<User>.Update.Set(p => p.Name, "John"), 
    new UpdateOptions { IsUpsert = true });

BEARBEITEN

Um das Dokument zu ersetzen, rufen Sie ReplaceOneAsync auf stattdessen:

collection.ReplaceOneAsync(p => p.Id == user.Id, 
    user, 
    new ReplaceOptions { IsUpsert = true });