Linq对SQL的速度是否比Linq更快?

Nom*_*cio 2 .net linq performance linq-to-entities linq-to-sql

我和我的一位同事讨论过.我们在工作中使用Linq到Sql,我在工作中有点新意,所以我问他为什么我们不使用Linq to Entities?他提出了一些论点,其中一个是"因为Linq to Entities比linq慢到Sql".我对此持怀疑态度,我知道Linq to Entities更复杂并且具有其他功能,但我不明白为什么它会变慢.

Linq对实体的影响是否较慢?对这样的论点有什么好的回应?

Ree*_*sey 5

这可能是由于早期版本的Entity Framework中的性能问题.

在早期版本中,有很多问题会在实体框架中翻译得很差.后来的版本解决了许多这些问题,所以现在我认为这可能是更好或更好的性能.

话虽如此,它实际上取决于您正在测试的内容 - 基准测试和分析是唯一的方法.对于某些操作,Linq To SQL会更快 - 但其他人的EF也会更快.话虽如此,EF现在允许更多机会解决限制和问题,因此随着时间的推移可能更容易调整.

  • +1.值得注意的是,下一版本的Entity Framework承诺自动缓存查询,这可能会使其在当前版本和LINQ to SQL上的性能得到显着提升. (3认同)