EntLib.com 专业电子商务平台

基于Microsoft .Net Framework / ASP.Net / C# / AJAX 平台构建的标准电子商务系统
随笔 - 99, 评论 - 69, 引用 - 0

比较LINQ to SQL Diagram 和Entity Data Model

比较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,如下图所示:


 
英文链接:
http://www.scip.be/index.php?Page=ArticlesNET12

 

 打印 | 发表评论 | posted on 2008年10月19日 20:31 | 目录 [ ASP.NET 3.5 ]

评 论

欢迎发表评论。

发表评论

标题  
姓名  
Email
主页
评论内容   
Please add 7 and 2 and type the answer here: