加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_宿迁站长网 (https://www.0527zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

你必须知道的EF知识和经验

发布时间:2016-10-28 23:12:41 所属栏目:教程 来源:站长网
导读:副标题#e# 注意:以下内容如果没有特别申明,默认使用的EF6.0版本,codefirst模式。 推荐MiniProfiler插件 工欲善其事,必先利其器。 我们使用EF和在很大程度提高了开发速度,不过随之带来的是很多性能低下的写法和生成不太高效的sql。 虽然我们可以使用SQL

你必须知道的EF知识和经验你必须知道的EF知识和经验

这段代码我也是从网上偷的,具体链接找不到了。

然后我们的代码可以写成:

有没有美美哒一点你必须知道的EF知识和经验。然后我们看看生成的sql是否正确:

EF的预热

http://www.cnblogs.com/dudu/p/entity-framework-warm-up.html

count(*)被你用坏了吗(Any的用法)

要求:查询是否存在名字为“张三”的学生。(你的代码会怎样写呢?)

第一种?第二种?第三种?呵呵,我以前就是使用的第一种,然后有人说“你count被你用坏了”,后来我想了想了怎么就被我用坏了呢?直到对比了这三个语句的性能后我知道了。

性能之差竟有三百多倍,count确实被我用坏了。(我想,不止被我一个人用坏了吧。)

我们看到上面的Any干嘛的?官方解释是:

我反复阅读这个中文解释,一直无法理解。甚至早有人也提出过同样的疑问《实在看不懂MSDN关于 Any 的解释》

所以我个人理解也是“确定集合中是否有元素满足某一条件”。我们来看看any其他用法:

要求:查询教过“张三”或“李四”的老师

实现代码:

两种方式,以前我会习惯写第一种。当然我们看看生成过的sql和执行效率之后,看法改变了。

效率之差竟有近六倍。

我们再对比下count:

(编辑:云计算网_宿迁站长网)

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