Я использовал по коду в течение длительного времени, но я думаю, что он неэффективен, потому что он должен выполняться несколько раз.Как использовать (.NET и NHibernate - CreateSQLQuery) (из-за использования «Foreach»)
Итак, я хочу отказаться от «Foreach» и того же выступления.
public void SaveProgramListinsertWithCart(List<ProductDto> insertList)
{
foreach (ProductDto insertItem in insertList)
{
Session.CreateSQLQuery(@"insert into Cart (ProdCode, Qty, CustId)
values (:prodCode, :qty, :custid)")
.SetParameter("prodCode", insertItem.ProdCode, NHibernateUtil.String)
.SetParameter("qty", insertItem.Qty, NHibernateUtil.Int32)
.SetParameter("custid", insertItem.CustId, NHibernateUtil.String)
.List();
}
}
Спасибо за ваш ответ, но ваш код до сих пор используется «FOREACH». –
Итак, я думаю, что он должен быть подключен DB несколько раз. Я знаю, что соединение IO влияет на производительность программы. По этой причине я действительно хочу удалить «FOREACH». –
Ну, вам нужно разместить каждую запись для каждого элемента в списке правильно? Вам нужен этот цикл. Вы можете настроить размер партии, если хотите, но это вопрос для другого потока: –