Мне нужно импортировать около 30 тыс. строк из файла CSV в мою базу данных SQL, это, к сожалению, занимает 20 минут.
Устранение неполадок с профилировщиком показывает, что DbSet.Add занимает больше всего времени, но почему?
У меня есть классы Entity Framework Code-First:
public class Article
{
// About 20 properties, each property doesn't store excessive amounts of data
}
public class Database : DbContext
{
public DbSet<Article> Articles { get; set; }
}
Для каждого элемента в моем цикле for я делаю:
db.Articles.Add(article);
За пределами цикла for я делаю:
db.SaveChanges();
Он связан с моим локальным сервером SQLExpress, но я думаю, что ничего не написано до тех пор, пока SaveChanges не будет вызван, поэтому я думаю, что сервер не будет проблемой....