使用存储过程时Linq是否快速SQL?

use*_*510 4 c# stored-procedures linq-to-sql

我想使用Linq to SQL进行数据库通信.我读了很多页面提到Linq很慢,但我喜欢它是快速开发技术.

请指导我使用Linq to SQL与存储过程在性能方面带来任何优势?

谢谢

Mar*_*ell 6

这里的主要优点是让IDE为您编写所有管道,即获取参数并返回数据.

在原始性能方面; 使用存储过程没有要解析的表达式树,所以它应该非常快.然而,在内部我们已经注意到在LINQ到SQL偶然的放缓materializer,如果你有大量使用这可能会影响到你.

如果你想要最快的性能,我的建议是看看dapper-dot-net,我们在找到这些物化器暂停后编写(并作为OSS发布).用法非常简单.特别是,这巧妙地允许您使用dapper来完成繁重的工作,但仍然使用IDE生成的类型来处理数据.

在内部,我们不使用存储过程; 我们使用以下组合:

  • LINQ-to-SQL表达式树代码
  • LINQ-to-SQL ExecuteQuery(等)代码
  • 短小精悍点网

表现的偏好(根据我们的经验)是最后的.第一个是方便编写,并且通常足够快.中间选项很快,但是当dapper具有几乎相同的API(并且更快)时,现在很难爱; p