随笔分类 -  Entity Framework 6

摘要:环境:vs2013+EF:6.1.3.0+Power Tools:Beta 4 power tools:是一个反向工程,在已有数据库的情况下,可以利用它生成Code Frist模式的代码. 问题: 它是整个库生成的,问题是它会把视图也当成表一样对待,生成实体,如下图: 也会在Map目录下生成映射文件 阅读全文
posted @ 2016-07-07 18:18 kid1412 阅读(1608) 评论(0) 推荐(0)
摘要:问题 你有一个POCO实体,原本在执行一个查询时动态创建代理,现在你不想EF延迟创建代理带来的代价. 解决方案 假设你有一个如图Figure13-15的模型 Figure 13-15. A model for CDs and music titles 对应的POCO类如代码Listing 13-27 阅读全文
posted @ 2016-05-17 00:26 kid1412 阅读(659) 评论(0) 推荐(1)
摘要:问题 你想不用Include()方法,立即加载一下相关的集合,并想通过EF的CodeFirst方式实现. 解决方案 假设你有一个如Figure 13-14所示的模型: Figure 13-14. A model for a Customer, their CreditCards, and Trans 阅读全文
posted @ 2016-05-16 15:04 kid1412 阅读(447) 评论(0) 推荐(0)
摘要:问题 你想把一个昂贵的属性移到另一个实体,这样你就可以延迟加载当前这个实体.对于一个加载昂贵的而且很少用到的属性尤其有用. 解决方案 模型和上一节(Recipes 13-7)的一致,如Figure13-10所示 Figure 13-10. A model with a Resume entity w 阅读全文
posted @ 2016-05-16 14:57 kid1412 阅读(289) 评论(0) 推荐(0)
摘要:问题 你有一个实体里的某个属性很少被读取或和更新,这个属性因为比较大,所以读取和更新都需要付很大的代价.你想有选择的放置这个属性 解决方案 假设你有一个如Figure 13-9 所示的模型 Figure 13-9. A model with a Resume entity with a Body p 阅读全文
posted @ 2016-05-16 14:52 kid1412 阅读(344) 评论(0) 推荐(0)
摘要:问题 你想为多次用到的查询提高性能,而且你不想添加额外的编码或配置. 解决方案 假设你有如Figure 13-8 所示的模型 Figure 13-8. A model with an Associate and its related Paycheck 在这个模型里,每个Associate(同事)有 阅读全文
posted @ 2016-05-16 00:19 kid1412 阅读(597) 评论(0) 推荐(0)
摘要:问题 你想用LINQ写一个搜索查询,能被转换成更有效率的SQL.另外,你想用EF的CodeFirst方式实现. 解决方案 假设你有如下Figure 13-6所示的模型 Figure 13-6. A simple model with a Reservation entity 首先,这个例子用EF的C 阅读全文
posted @ 2016-05-14 23:27 kid1412 阅读(330) 评论(0) 推荐(0)
摘要:问题 不管你用DBFirst,ModelFirst或是CodeFirst的方式,你想用实体键获取一个单独的实体.在本例中,我们用CodeFirst的方式. 解决方案 假设你有一个模型表示一个Painting(绘画)类型的实体,如Figure 13-2所示: Figure 13-2. The Pain 阅读全文
posted @ 2016-05-14 23:22 kid1412 阅读(643) 评论(0) 推荐(2)
摘要:问题 你想提高在一个TPT继承模型里的查询 解决方案 让我们假设有一个简单的TPT继承模型,如图Figure 13-1 Figure 13-1. A simple Table per Type inheritance model for Salaried and Hourly employees 你 阅读全文
posted @ 2016-05-14 17:09 kid1412 阅读(416) 评论(0) 推荐(0)
摘要:12-8. 重新获取一个属性的原始值 问题 在实体保存到数据库之前,你想重新获取属性的原始值 解决方案 假设你有一个模型 (见 Figure 12-11) 表示一个员工( Employee),包含工资(salary)属性. 你有一个业务规则,规定一个员工的工资增长不能超过10%.在一个实体保存到数据 阅读全文
posted @ 2016-01-28 00:02 kid1412 阅读(480) 评论(0) 推荐(0)
摘要:12-7. 设定默认值 问题 在把一个实体保存到数据库之前,设置该实体属性的默认值 解决方案 假设你有一个如Figure 12-9所示的表, 它保存采购订单(purchase order). 主键PurchaseOrderId是一个GUID,有订单创建时间,最后修改时间,和备注,而且备注列不再使用, 阅读全文
posted @ 2016-01-27 23:36 kid1412 阅读(468) 评论(0) 推荐(1)
摘要:12-5. 自动删除相关联实体问题当一个实体被删除时,你想自动删除它相关联的实体解决方案假设你有一个表结构由一个course (科目), course 的classes (课程),以及enrollment (登记学生选课),如 Figure 12-5所示:.Figure 12-5. The Cour... 阅读全文
posted @ 2016-01-26 23:16 kid1412 阅读(527) 评论(0) 推荐(1)
摘要:12-3. 数据库连接日志问题你想为每次与数据库的连接和断开记录日志解决方案EF为DbContext的连接公开了一个StateChange 事件.我们需要处理这个事件, 为每次与数据库的连接和断开记录日志.假设我们的模型如Figure 12-3所示. 在 Listing 12-3代码里, 我们创建一... 阅读全文
posted @ 2016-01-26 13:12 kid1412 阅读(446) 评论(0) 推荐(0)
摘要:第12章定制EF在本章的小节里,定制实体对象和EF处理的一些功能.这些小节将涵盖很多”幕后”的事情,能让你的代码更加统一解决一些事情,比如用一个业务规则中心统一地为实体执行验证.本章开始的小节,将演示如何在你的应用程序中当调用SaveChanges() 时,执行你自己的代码. 如果你想在你的应用程序... 阅读全文
posted @ 2016-01-26 01:19 kid1412 阅读(549) 评论(0) 推荐(0)
摘要:11-12. 定义内置函数问题想要定义一个在eSQL 和LINQ 查询里使用的内置函数.解决方案我们要在数据库中使用IsNull 函数,但是EF没有为eSQL 或LINQ发布这个函数. 假设我们已有一个WebProduct实体模型,如Figure 11-12所示.Figure 11-12. A We... 阅读全文
posted @ 2016-01-26 00:06 kid1412 阅读(457) 评论(0) 推荐(0)
摘要:11-11. 在LINQ中调用数据库函数问题相要在一个LINQ 查询中调用数据库函数.解决方案假设有一个任命(Appointment )实体模型,如Figure 11-11.所示, 我们想要查询某周给定的一天里的所有appointment.Figure 11-11. An Appointment e... 阅读全文
posted @ 2016-01-25 23:40 kid1412 阅读(513) 评论(0) 推荐(0)
摘要:11-9. 在LINQ中使用规范函数问题想在一个LINQ查询中使用规范函数解决方案假设我们已经有一个影片租赁(MovieRental )实体,它保存某个影片什么时候租出及还回来,以及滞纳金等,如Figure 11-9. 所示:Figure 11-9. The MovieRental entity t... 阅读全文
posted @ 2016-01-25 23:18 kid1412 阅读(439) 评论(0) 推荐(0)
摘要:11-6.从一个”模型定义”函数里返回一个复杂类型问题想要从一个”模型定义”函数返回一个复杂类型解决方案假设我们有一个病人(patient)和他们访客(visit)的模型,如 Figure 11-6所示 .Figure 11-6. A model for patient visits我们想要创建一个... 阅读全文
posted @ 2016-01-25 22:39 kid1412 阅读(265) 评论(0) 推荐(0)
摘要:11-5. 从”模型定义”函数返回一个匿名类型问题想创建一个返回一个匿名类型的”模型定义”函数解决方案假设已有游客(Visitor) 预订(reservation)房间(hotel ) 的模型,如Figure 11-5所示.Figure 11-5. A model for hotel reserva... 阅读全文
posted @ 2016-01-25 22:37 kid1412 阅读(298) 评论(0) 推荐(0)
摘要:11-4.在”模型定义”函数里调用另一个”模型定义”函数问题想要用一个”模型定义”函数去实现另一个”模型定义”函数解决方案假设我们已有一个公司合伙人关系连同它们的结构模型,如Figure 11-4所示:Figure 11-4. A model representing the associate t... 阅读全文
posted @ 2016-01-24 23:19 kid1412 阅读(342) 评论(0) 推荐(0)