Search code examples
c#mongodbmongodb-.net-driver

MongoDB.Driver.UpdateDefinition from json string


Can i deserialize json string to MongoDB.Driver.UpdateDefinition I try:

var updateData="{'Description':'Big Description'}";
var obj = BsonSerializer.Deserialize<UpdateDefinition<BsonDocument>>(updateData);

But it not work(


Solution

  • You cannot instantiate UpdateDefinition<T> since it's an abstract class. You can get an instance of JsonUpdateDefinition which represents update operation by using below code:

    var updateData = "{'Description':'Big Description'}";
    var obj = new JsonUpdateDefinition<BsonDocument>(updateData);
    

    You should also check whether you want to replace existing document using above update definition or just set single field. In that case you need $set operator.