如何从IEnumerable获取数据块

时间:2011-07-06 12:08:15

标签: c#

我需要从IEnumerable中获取一块数据。我找到了一个解决方案但我现在想要更高效的解决方案。这是我的代码: ......

foreach (var item in pocoListToInsert)
{
   var pd = PetaPoco.Database.PocoData.ForType(pocoListToInsert.First().GetType());
   maxRecords = maxParam / pd.Columns.Count;
   if (list.Count < maxRecords)
      list.Add(item);
   else if (list.Count == maxRecords || item == lastRecord)
   {
      Insert(pd.TableInfo.TableName, pd.TableInfo.PrimaryKey, true, pocoListToInsert);
      list.Clear();
   }
} 

2 个答案:

答案 0 :(得分:3)

绝对不了解你,但LINQ方法SkipTake可能会对你有用

答案 1 :(得分:0)

编写一个产生所需数据的linq查询,并以 .ToList()

结束