使用c#在Mongo DB中插入DataTable

时间:2016-06-21 09:08:45

标签: c# mongodb mongodb-.net-driver

我需要使用C#将数据插入MongoDB Collection。 问题是,我有一些记录的数据表,我想将这些记录插入MongoDb 有谁能够帮我 全部

1 个答案:

答案 0 :(得分:0)

尝试google,例如,您可以使用以下代码。

public async Task SaveDataTableToCollection(DataTable dt)
      {
          var connectionString = ConfigurationManager.AppSettings["mongoConnection"];
          var client = new MongoClient(connectionString);
          var database = client.GetDatabase("myMongoDatabaseName");

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

          List<BsonDocument> batch = new List<BsonDocument>();
          foreach (DataRow dr in dt.Rows)
          {
              var dictionary = dr.Table.Columns.Cast<DataColumn>().ToDictionary(col => col.ColumnName, col => dr[col.ColumnName]);
              batch.Add(new BsonDocument(dictionary));
          }

          await collection.InsertManyAsync(batch.AsEnumerable());
      }

并在配置文件中:

<add key="mongoConnection" value="mongodb://localhost" />