使用BsonDocument BsonArray将包含json文档数组的json文件插入ammongodb集合中

时间:2019-09-29 11:22:05

标签: c# json mongodb .net-core bsondocument

我正在研究一种异步读取json文件(包含json对象数组)的内容并将其插入mongodb集合的方法,但是我无法弄清楚问题出在哪里。调试时没有错误,但我的收藏集仍然为空。

Obj<T>

1 个答案:

答案 0 :(得分:0)

我尝试通过以下方法重现该问题,但效果很好。文本文件的内容可能有问题。您可以发布文件样本吗?

using MongoDB.Bson;
using MongoDB.Bson.Serialization;
using MongoDB.Driver;
using System.IO;
using System.Linq;
using System.Threading.Tasks;

namespace StackOverflow
{
    public class Program
    {
        private static async Task Main(string[] args)
        {
            var content = File.ReadAllText("E:\\Downloads\\cars.txt"); //https://mongoplayground.net/p/LY0W7vjDuvp

            var docs = BsonSerializer.Deserialize<BsonArray>(content).Select(p => p.AsBsonDocument);

            var collection = new MongoClient("mongodb://localhost")
                                    .GetDatabase("test")
                                    .GetCollection<BsonDocument>("Cars");

            await collection.InsertManyAsync(docs);
        }
    }
}