什么时候LINQ优于ado.net

Ali*_*ini 2 linq ado.net

我们知道linq是一个建立在ado.net堆栈顶部的层.它是一个非常好的功能,使数据库查询更好,但linq是一个额外的层,因此它增加了一些开销将linq查询转换为sql查询并映射结果,而在ado.net我们直接编写sql查询.

我的问题是linq什么时候比使用普通的ado.net方法更快.

Jon*_*eet 7

当在原始SQL中编写所有这些查询并管理所有其他翻译等所节省的时间时,您可以花更多的时间来发现性能瓶颈.

LINQ并不是表现优于SQL.这是为了使代码更简单,更清晰,因此您可以专注于更重要的方面.有时候,查询的自然LINQ表达式会以比你自己想出的更快的SQL结束 - 尽管有很多次相反的情况也会发生.您仍应查看正在生成的SQL,并相应地对其进行概要分析.