Entity Framework 4.1 推荐教程.docx
文本预览下载声明
HYPERLINK /page/100038/ \t _blank Entity Framework 4.1 推荐教程
HYPERLINK /haogj/archive/2011/05/06/2038965.html Entity Framework 4.1 之一 : 基础
原文名称:Entity Framework 4.1: Basics (1)
原文地址: HYPERLINK /2011/04/03/entity-framework-4-1-basics-1/ /2011/04/03/entity-framework-4-1-basics-1/
看到 HYPERLINK /page/100038/ \t _blank Entity Framework 4.1 推荐英文教程,为了帮大家看起来方便一些,简单翻译一下。这是一个系列,共有 8 篇,这是第?1 篇。
?
HYPERLINK /haogj/archive/2011/05/06/2038965.html Entity Framework 4.1 之一 : 基础
HYPERLINK /haogj/archive/2011/05/06/2039149.html Entity Framework 4.1 之二 : 覆盖默认的约定
HYPERLINK /haogj/archive/2011/05/07/2039620.html Entity Framework 4.1 之三 : 贪婪加载和延迟加载
HYPERLINK /haogj/archive/2011/05/07/2040093.html Entity Framework 4.1 之四:复杂类型
HYPERLINK /haogj/archive/2011/05/07/2040106.html Entity Framework 4.1 之五:多对多的关系
HYPERLINK /haogj/archive/2011/05/08/2040190.html Entity Framework 4.1 之六:乐观并发
HYPERLINK /haogj/archive/2011/05/08/2040193.html Entity Framework 4.1 之七:继承
HYPERLINK /haogj/archive/2011/05/08/2040196.html Entity Framework 4.1 之八:绕过 EF 查询映射
?
从 Code First 的名字可以猜到,使用 Code-First,你需要从代码开始数据的工作,你可以直接通过代码生成相应的数据库,也可以使用已经存在的数据库。使用 Code First 的好处在于,你的实体类不需要任何 EF 的内容:不需要派生自某个特定的基类,也不需要任何讨厌的标签附加在其上。好了,对于标签来说,像我们将要看到的,是可选的。
让我们通过一个简单的实体模型开始吧:订单和订单明细,我们使用下面的类来建模。
publicclass Order { publicint OrderID { get; set; } publicstring OrderTitle { get; set; } publicstring CustomerName { get; set; } public DateTime TransactionDate { get; set; } public ListOrderDetail OrderDetails { get; set; } } publicclass OrderDetail { publicint OrderDetailID { get; set; } publicint OrderID { get; set; } publicdecimal Cost { get; set; } publicstring ItemName { get; set; } public Order Order { get; set; } }
注意类的下述特点:
没有派生自任何 EF 类
没有使用 EF 标签
订单 Order 包含若干的订单明细 OrderDetail,订单明细包含一个指向订单的引用。
每一个属性是:
简单的 CLR 类型,例如:string, int 等等
实体类型,例如:订单
实体的 List 集合,例如:ListOrderDetail
需要通过一个容器将这些类映射到数据库,这里称为? Database-Context:
publicclass MyDomainContext : DbContext { public DbSe
显示全部