2016-06-21 96 views
-2

我需要使用C#将数据插入到MongoDB Collection。 的问题是,我有数据表的一些记录,我想插入这些记录到MongoDB的 任何人可以帮助我 THX所有使用c#在Mongo DB中插入DataTable#

+0

谷歌并不能帮助你去尝试用于此目的的一些基本的代码? :)) –

+0

请参阅[this](http://stackoverflow.com/questions/37932924/how-to-solve-mongodb-related-issue-efficiently)并请添加一些东西到您的问题。谢谢。 – profesor79

回答

0

尝试谷歌,为e.g,您可以使用下面的代码。

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" />