webapi sql 查询比较性能

webapi sql performance of query comparison

就执行速度而言,在 webapi2 所有条件相同的情况下,哪种方法 运行 更快?

选项 1 var 结果 = db.Database.SqlQuery("dbo.myStoredProcedure").ToList();

选项 2 var query = db.table1.where(x =>x.email) == targetEmail.select(c => new PortfolioPerfomance)

基本上选项 1 我自己写了 sql 存储过程,选项 2 我让 EF 中的模型做适当的关系。查询比这复杂得多,但我只是想了解哪个概念会更快。

谢谢!!

这是一个 EF 的东西,不管你是否使用网络 api。

但是,对于要更新大量数据的批量更新,存储过程总是比 ORM 解决方案执行得更好,因为您不必通过网络将数据编组到 ORM 来执行更新.

此外,如果查询很复杂,存储过程在需要检索大量数据时比 Entity Framework 更快。

请记住,如果您有适当的数据库设计,这两个选项都会 运行 更快。

查看这篇文章以获取一些提高 WEB API 性能的技巧:https://www.c-sharpcorner.com/article/Tips-And-Tricks-To-Improve-WEB-API-Performance/

同时检查这个以改进存储过程:https://www.c-sharpcorner.com/article/improve-stored-procedure-performance-in-sql-server-store-procedure-performance/