您的位置:首页 > 数据库

LINQ to SQL 与 LINQ to Entities 对比

2009-03-19 15:41 323 查看
两种的特性:

Feature

LINQ to SQL

LINQ to Entities

Language Extensions Support

Y

Y

Language Integrated Database Queries

Y

Y

Many-to-Many (3way Join/Payload relationship)

N

N

Many-to-Many (No payload)

N

Y

Stored Procedures

Y

N (to be added)

Entity Inheritance

N

Y

Single Entity From Multiple Tables

N

Y

Identity Management / CRUD features

Y

Y

Kevin Hoffman的结论是,

如果你需要有对底层数据库数据定义的隔离,使你的对象更有弹性,那么采用实体框架

如果你需要实体继承和实体组合,那么使用实体框架

如果你已经有大量DLINQ编码,不用实体也运行正常,那么别浪费时间重构到实体框架

如果你需要针对对象模型做LINQ查询,但你的对象模型与数据库里的数据表有1:1对应的话,你大概不需要实体框架

ADO.NET vNext包含一个“客户端视图(client-views)”引擎,假以时日,其威力之强劲,让人难以拒绝实体框架

Paul Gielens也指出,选择哪个技术,很大程度上取决于你的数据库定义与你的domain model是否相近。如果非常相似,那么使用LINQ to SQL更直接了当,否则就使用ADO.NET实体框架。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: