加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

LINQ-to-SQL CompiledQuery.Compile()与更新,删除,插入?

发布时间:2020-12-12 16:19:32 所属栏目:MsSql教程 来源:网络整理
导读:所有, 所以我已经将LINQ-to-SQL中的所有选择查询转换为使用CompiledQueries来加快速度.到目前为止,对于select语句来说效果很好,但是我还没弄清楚如何预编译insert,update或delete语句. 当然,当您在LINQ-to-SQL中插入,删除或更新时,必须使用对象模型.但显然它
所有,

所以我已经将LINQ-to-SQL中的所有选择查询转换为使用CompiledQueries来加快速度.到目前为止,对于select语句来说效果很好,但是我还没弄清楚如何预编译insert,update或delete语句.

当然,当您在LINQ-to-SQL中插入,删除或更新时,必须使用对象模型.但显然它在某处生成一个查询,这对于预编译和存储在??静态成员中会很好.

这可能吗?什么是LINQ性能,如更新,删除和插入时,它没有预编译?我可以看到它比选择快得多,因为他们在下面做的更简单,更少“动态”……

解决方法

有一个很大的不同. Linq-To-SQL选择查询可以是大型复杂表达式树.这些可能需要一段时间“编译”.在这种情况下,合并到一些可以针对SQL Server运行的T-SQL.因此,缓存操作的结果以便可以重复使用是有意义的.

但是,其他Delete,Update和Insert是简单的操作,不需要将表达式树转换为T-SQL(LINQ本身就是查询).非常不幸的是,我们已经接受过训练,可以将SQL代码视为“查询”来执行这些其他操作,我们并不是要求任何信息.

这些操作仅由DataContext定义,而不是由LINQ定义,因此已经编译了执行这些函数的代码.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读