从数据库中检索记录并将其分配给对象。
private readonly ApplicationDbContext _context;
var itemsData = _context.Items;
for (int i = 0; i < itemsData.Count(); i++)
{
_Response.Items.Add(new Models.Items
{
Name = itemsData.ToList()[i].Name,
....
Created = (DateTime)itemsData.ToList()[i].Created,
Updated = (DateTime)itemsData.ToList()[i].Updated
});
}
注意:记录少于1000条,已经显而易见。
答案 0 :(得分:5)
您在每次迭代时调用ToList
,每次迭代都会对数据库执行SQL查询。这样做1000次,难怪它很慢。
只需拨打ToList
一次,然后foreach
结果:
var itemsData = _context.Items.ToList();
foreach (var item in itemsData)
{
_Response.Items.Add(new Models.Items
{
Name = item .Name,
....
Created = (DateTime)item.Created,
Updated = (DateTime)item.Updated
});
}