MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como fazer um upsert com o MongoDB 2.0?


Passe uma instância de UpdateOptions como o parâmetro options em UpdateOneAsync(filter, update, options) , por exemplo.:
collection.UpdateOneAsync(p => p.Id == user.Id, 
    Builders<User>.Update.Set(p => p.Name, "John"), 
    new UpdateOptions { IsUpsert = true });

EDITAR

Para substituir o documento, chame ReplaceOneAsync em vez de:
collection.ReplaceOneAsync(p => p.Id == user.Id, 
    user, 
    new ReplaceOptions { IsUpsert = true });