MongoDB.Driver.UpdateDefinition из строки json - PullRequest
1 голос
/ 01 ноября 2019

Могу ли я десериализовать строку json в MongoDB.Driver.UpdateDefinition Я пытаюсь:

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

Но это не работает (

1 Ответ

2 голосов
/ 01 ноября 2019

Вы не можете создать экземпляр UpdateDefinition<T>, поскольку это класс abstract . Вы можете получить экземпляр JsonUpdateDefinition, представляющий операцию обновления, используя следующий код:

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

Вы также должны проверить, хотите ли вы заменить существующий документ, используя приведенное выше определение обновления, или просто задать одно поле. В этом случае вам нужен оператор $ set .

...