Может ли NHibernate сохранить коллекцию без итератора? - PullRequest
7 голосов
/ 18 декабря 2009

Простой вопрос: может ли NHibernate сохранить коллекцию без итератора? Например:

var list = new List<Item>();
list.Add(1000 items);

session.Save(list);

Или я должен сделать foreach над списком?

1 Ответ

10 голосов
/ 19 декабря 2009

Простой вопрос - простой ответ. AFAIK нет - вы должны повторить. На самом деле это быстрее, если вы продолжаете очищать и очищать сеанс время от времени, как сказано в Документах NHibernate о пакетной обработке:

for(int i=0;i<list.count;i++)
{
  session.Save(list[i])
  if(i % 20 == 0)
  {
    session.Flush();
    session.Clear()
  }
}
...