Ускорить коммиты Entity Framework - PullRequest
0 голосов
/ 04 марта 2020

Я читаю файл .csv, создаю из него записи базы данных, используя Entity Framework, и фиксирую новые записи, как только я создал 100 из них.

Файл .csv может содержать до 20 тыс. Строк.

Что я вижу, так это то, что при первом запуске каждые 100 записей фиксируются достаточно быстро, менее чем за 1 секунду. К тому времени, как я получаю 15k записей, на следующие 100 уходит 3-4 секунды.

Кто-нибудь может предложить способ ускорить это?

Редактировать : подумал, что было бы полезно дать вам краткий обзор моего кода:

TextFieldParser parser = new TextFieldParser(path/to/file);
string[] fields;

while (!parser.EndOfData)
{
    fields = parser.ReadFields();
    myObject blah = new myObject();
    blah.property = fields[0]

    db.MyObjects.Add(blah);

    lineCount += 1;

    if(lineCount = commitAt)
    {
            db.SaveChanges();
            lineCount = 0;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...