您的位置:首页 > 数据库

比较LINQ to SQL Diagram 和Entity Data Model

2008-10-22 06:58 393 查看
比较LINQ to SQL Diagram 和Entity Data Model

LINQ to SQL Diagram(DBML)和Entity Data Model(EDMX)都是.Net Framework v3.5 引入的新特性。相信有很多人不清楚它们之间的差异,这里简要分析比较。下面以Northwind 范例数据库进行说明:

LINQ to SQL 对象关系图(Object Relational Diagram)



Entity Data Model (EDM) 实体数据模型



Entity Data Model Diagram 和LINQ to SQL Diagram 有大量的相似之处。一个EDM 实体分为2部分:Scalar 属性和Navigation 属性。一个Navigation属性关联另一个EntityType实体类型,并定义了关系的方向(one-to-many, one-to-one 等等)。

EDM关联也LINQ to SQL关联采用不同的可视化属性界面,但实际上表示相同的内容。

LINQ to SQL : Association



EDM : Association



EntityTypes 和 EntitySets 的命名

默认情况下,LINQ to SQL 自动更改复数形式的表名为单数形式的实体类名,EDM设计器则不会这样做。因此,当Northwind 数据表Employees 映射到EDM中时,EntityType 命名为Employees,这一命名容易导致混淆。



因此,建议手动对EntityType 更名 – Employee。



更名之后,你会发现EDM也更新了。在LINQ to Entities查询语句中,智能提示也正确显示ObjectQuery<Employee> NorthwindEntities.Employees,如下图所示:



推荐Entity Framework 相关文章:
1. Entity Framework – Update Model From Database, Part 1
http://blog.entlib.com/EntLib/archive/2008/10/19/entity-framework-update-model-from-database-part-1.aspx
2. Entity Framework – Update Model From Database, Part 2
http://blog.entlib.com/EntLib/archive/2008/10/19/entity-framework-update-model-from-database-part-2.aspx
3. Entity Framework 架构简介
http://blog.entlib.com/EntLib/archive/2008/10/19/entity-framework-architecture.aspx
4. 比较LINQ to SQL Diagram 和Entity Data Model
http://blog.entlib.com/EntLib/archive/2008/10/19/linq-to-sql-diagram-entity-data-model.aspx

英文链接:
http://www.scip.be/index.php?Page=ArticlesNET12
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: