我必须在数据库中插入一些记录,但这需要 20-25 秒左右的时间。我有两种方法,第一种方法包含一个foreach
带有列表类型参数的循环,第二种方法有一些 Linq 查询来保存和删除一些记录。代码如下。
public void InsertAssignment(List<TIVGroupItem> Item)
{
using (var tr = session.BeginTransaction())
{
try
{
foreach (var item in Item)
{
ak_tIVGroupItemSelector_Insert(item);
}
tr.Commit();
}
catch (Exception ex)
{
tr.Rollback();
CusException cex = new CusException(ex);
cex.Write();
}
}
}
第二种方法
public void ak_tIVGroupItemSelector_Insert(TIVGroupItem GroupItem)
{
try
{
var result = (from i in session.Query<TIVGroupItem>()
where i.Id == GroupItem.Id
select i).SingleOrDefault();
if (result != null)
session.Delete(result);
session.Save(GroupItem);
}
catch (Exception ex)
{ CusException cex = new CusException(ex);
cex.Write();
}
}
项目列表包含一些记录。那么我如何才能在这类问题上提高我的表现。有什么方法可以提高我的性能以将记录保存在数据库中?