Как запустить запрос оболочки mongodb из c # с помощью драйвера mongodb - PullRequest
0 голосов
/ 26 сентября 2018

Я хочу запустить запрос монго из C #.В настоящее время я использую драйвер mongodb C # 2.7

db.changelog.find({}).forEach(function(doc){
//make javascript object dynimacally 
var newDoc = {
    "key": "value",
    "doc": doc
}
db.changelog_log.insertOne(newDoc); })

Это успешно запущено в оболочке mongo, теперь я хочу выполнить этот скрипт из приложения c # с динамическим изменением значения объекта.Я надеялся, что он сможет проанализировать эти запросы и передать их в database.RunCommand, но я не смог добиться какого-либо прогресса.

var bsonDoc = MongoDB.Bson.Serialization.BsonSerializer.Deserialize<BsonDocument>("query");

database.RunCommand (команда);

Этот код завершается ошибкой при вызове десериализации с этим сообщением об ошибке: [Дополнительная информация: читатель JSON ожидал значение, но обнаружил 'db'.], Что имеет смысл, поскольку сценарий не является допустимым JSON.

После того, как функция mvalo 3.0 устарела, она устарела.

Поэтому у меня возникли проблемы с синтаксическим анализом сценария, который можно выполнить.

1 Ответ

0 голосов
/ 26 сентября 2018

VehicleModel - это модель, которую я использую для вставки и то же самое для извлечения,

, поэтому она заменяется вашей моделью

        var collection = database.GetCollection<VehicleModel>("VehicleModel");

        var Data = await collection.Find(Builders<VehicleModel>.Filter.Empty).ToListAsync();


        foreach(VehicleModel vm in Data)
        {
            var newDoc =
            {
            "key": "value",
            "doc": vm
            collection.InsertOneAsync(value);
            }
        }

Возможно, вы ищете это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...