Linq to sql 连续几次提交的更改非常缓慢

Linq to sql 连续几次提交的更改非常缓慢,linq-to-sql,submitchanges,Linq To Sql,Submitchanges,一个问题: 为什么我使用下面的代码 for (int i = 0; i < 10000; i++) { Entity e = new Entity(); e.DisplayValue = i.ToString(); ctx.Entities.InsertOnSubmit(e); } ctx.SubmitChanges(); for(int i=0;i

一个问题: 为什么我使用下面的代码

 for (int i = 0; i < 10000; i++)
  {
      Entity e = new Entity();
      e.DisplayValue = i.ToString();
      ctx.Entities.InsertOnSubmit(e);
  }
  ctx.SubmitChanges();
for(int i=0;i<10000;i++)
{
实体e=新实体();
e、 DisplayValue=i.ToString();
ctx.Entities.InsertOnSubmit(e);
}
ctx.SubmitChanges();
大约8秒后结束

但是当我使用这个代码时

 for (int i = 0; i < 10000; i++)
  {
      Entity e = new Entity();
      e.DisplayValue = i.ToString();
      ctx.Entities.InsertOnSubmit(e);
      ctx.SubmitChanges();
  }
for(int i=0;i<10000;i++)
{
实体e=新实体();
e、 DisplayValue=i.ToString();
ctx.Entities.InsertOnSubmit(e);
ctx.SubmitChanges();
}
大约50秒后结束


第二个例子,因为它对我来说更合适,我该怎么做呢?

每次调用SubmitChanges时,Linq to Sql都会检查每个对象是否有跟踪的更改,因此将更改为1个对象,但是,重复相同的更改10000次并调用SubmitChanges将以指数方式增加Linq到Sql处理更改所需的时间,因为每次都要添加一个额外的项