2009-12-18 3 views
7

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

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

session.Save(list); 

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

+0

Вы должны использовать сессионный проверить эту ссылку HTTP: // StackOverflow .com/questions/29860256/c-sharp-nhibernate-save-list –

ответ

10

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

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

Спасибо. Не намного больше работы, просто интересно, может ли он спасти меня несколькими строками кода. –