2017-03-08 4 views
1

私はちょうど私の新しいproject.Iちょうどここにデータベースを設定し、MongoDBのためのC#ドライバをインストールし、ために大量のデータのを扱うの結果としてのMongoDBを使用して、私はMongoDBはすべての私のレコードを挿入することができなかった

を試してみました何され始めています
public IHttpActionResult insertSample() 
{ 

    var client = new MongoClient("mongodb://localhost:27017"); 
    var database = client.GetDatabase("reznext"); 
    var collection = database.GetCollection<BsonDocument>("sampledata"); 
    List<BsonDocument> batch = new List<BsonDocument>(); 

    for (int i = 0; i < 300000; i++) 
    { 
     batch.Add(
      new BsonDocument { 
      { "field1", 1 }, 
      { "field2", 2 }, 
      { "field3", 3 }, 
      { "field4", 4 } 
       }); 
    } 
    collection.InsertManyAsync(batch); 
    return Json("OK"); 
} 

しかし、私はドキュメントのコレクションをチェックすると、私はクライアントとしてrobomongoを使用し、ここで何が間違っているか知りたいと思います0.3Millionレコードのうちのわずか42kを参照してください。

答えて

1

あなたは非同期で書き込みを行い、結果を待つことはありません。それを待つ次のいずれかの

collection.InsertManyAsync(batch).Wait(); 

あるいは同期呼び出しを使用します。

collection.InsertMany(batch); 
関連する問題