[翻译] EF Core 概述
Entity Framework Core in Action
Entityframework Core in action是 Jon P smith 所著的关于Entityframework Core 书籍。原版地址. 是除了官方文档外另一个学习EF Core的不错途径, 书中由浅入深的讲解的EF Core的相关知识。因为没有中文版,所以本人对其进行翻译。 预计每两天一篇更新 PS: 翻译难免限于本人水平有不准确的地方,建议英文水平不错的同学直接查看原版,有不足的地方欢迎指正
第一部分目录导航
EF Core 概述
EF Core可以用作O/RM, 它在关系型数据库和包含类与软件代码的.NET软件之间进行映射. 表1.1展示了EF Core如何映射关系型数据库和.NET软件

O/RM的缺陷
编写一个优秀的O/RM很复杂的,尽管EF6.x或EF Core很容易使用,但有时EF Core的"魔法"会让你大吃一惊(surprise -.-),在我们深入了解EF Core的工作原理之前,我需要先提一下两个需要注意的问题
第一个问题是对象关系抗阻不匹配. 数据库服务器和面向对象的软件使用了不同的规则: 数据库使用主键来定义行是唯一的,而.Net类实例的引用在默认情况下被认为是唯一的. EF Core会为你处理大部分内容,但是你的.Net类会被这些键(主键)"污染",它们的值很重要.虽然大多数情况下EF Core都可以很好的处理,但有时你不得不做一些与纯软件解决方案不同的处理方式.你会在第2章看到一个多对多关系的例子:在C#中很容易,但在数据库中需要多做一些处理
第二个问题是O/RM(尤其是EF Core这样全面的O/RM)将数据库隐藏的深,以至于你有时会忘记数据库中会发生什么,这可能会导致你编写的代码在测试应用中没有什么问题,但是来到了实际的生产环境,当数据库很复杂并且有很多并发用户时,执行的效率会很低下
这就是为什么我会花时间在本章中展示EF Core的工作原理以及它生成的SQL. 对EF Core了解的更多,就越能够编写更好的EF Core代码,更重要的是当出现问题时知道怎么分析
注: 在本书中,我使用 "让EF Core正常工作,但如果我需要,会让它的性能变的更快"的方法来使用EF Core.EF Core让我们快速开发,但由于EF Core的缺陷或我对它的不良使用导致了数据库访问代码的性能不足以满足特定业务需求. 第5章介绍了如何隔离EF Core在最小的代价下对其优化,第13章介绍了如何查找和改进性能低下的数据库访问代码
[翻译] EF Core 概述的更多相关文章
- [翻译 EF Core in Action 2.2] 创建应用程序的数据库上下文
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 1.9] 掀开EF Core的引擎盖看看EF Core内部是如何工作的
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译] EF Core in Action 关于这本书
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 2.3] 理解EF Core数据库查询
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 2.1] 设置一个图书销售网站的场景
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 2.0] 查询数据库
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 1.10] 应该在项目中使用EF Core吗?
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 1.11] 何时不应该使用EF Core
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
- [翻译 EF Core in Action 1.8] MyFirstEfCoreApp应用程序设置
		Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Cor ... 
随机推荐
- dirlock.go
			// +build !windows package dirlock import ( "fmt" "os" "syscall ... 
- 【codeforces 698C】LRU
			题目链接: http://codeforces.com/problemset/problem/698/C 题目大意: n个物品,k个格子,第i个物品每次被选取的概率为$p_{i}$,如果格子里没有该物 ... 
- bzoj 3166 可持久化Tire
			每一个数能做出的贡献就是其两端第二个比他大的中间的数和他的异或值 按权值大小排序,按照位置扔进set,set内的元素都是比他大的,也是全的 然后Tire上跑就行了.. #include<cstd ... 
- JS基础:常用API
			全局属性 typeof() 检测数据类型 parseInt() 从字符串解析一个整数 parseFloat() 从字符串解析一个小数 Number() 强制类型转换为数字 String() 强制类型转 ... 
- python——在文件存放路径下自动创建文件夹!
			1.a.py文件存放的路径下为(D:\Auto\eclipse\workspace\Testhtml\Test) 2.通过os.getcwd()获取的路径为:D:\Auto\eclipse\works ... 
- centos7 启动docker失败的解决
			控制端使用yum install docker安装完成docker后启动docker失败,出现以下信息: Job for docker.service failed because the contr ... 
- 【STM32H7教程】第8章   STM32H7的终极调试组件Event Recorder
			完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第8章 STM32H7的终极调试组件Event Re ... 
- 用Python学分析 - 正态分布
			正态分布(Normal Distribution) 1.正态分布是一种连续分布,其函数可以在实线上的任何地方取值. 2.正态分布由两个参数描述:分布的平均值μ和方差σ2 . 3.正态分布的取值可以从负 ... 
- Java后端框架之Spring Boot详解,文末有Java分布式实战项目视频可取
			在 Java 后端框架繁荣的今天,Spring 框架无疑是最最火热,也是必不可少的开源框架,更是稳坐 Java 后端框架的龙头老大. 用过 Spring 框架的都知道 Spring 能流行是因为它的两 ... 
- css中margin为负数的深入研究
			注:以下实验的元素均为块级元素,inline-block和inline本身对margin某些方向上都是无效的,所以这里不予讨论. margin-left或者margin-right为负数 当块元素wi ... 
