【发布时间】:2011-07-18 04:13:07
【问题描述】:
linq 中的 .edmx 和 .dbml 文件有什么区别?在 VS 2008 中,哪个数据源是 edmx 或 dbml 的最佳选择?在 VS 2008 中使用 edmx 文件会出现什么问题?我可以在 VS-2008 中使用 edmx 吗?
【问题讨论】:
-
你应该奖励某人
标签: linq linq-to-sql entity-framework linq-to-entities
linq 中的 .edmx 和 .dbml 文件有什么区别?在 VS 2008 中,哪个数据源是 edmx 或 dbml 的最佳选择?在 VS 2008 中使用 edmx 文件会出现什么问题?我可以在 VS-2008 中使用 edmx 吗?
【问题讨论】:
标签: linq linq-to-sql entity-framework linq-to-entities
两者都是作为最新技术引入的,有时在使用哪种技术时会有些混乱。 Entity Framework 和 LINQ to SQL 有很多共同点,但在很多方面仍然彼此不同:
实体框架:
一、企业发展:
2. 使用数据库的概念模型:
3. 适用于所有数据源:
4. “.EDMX”是在使用实体框架时创建的:
LINQ::
1. 快速应用开发:
2. 使用数据库中的对象:
3.主要与SQL Server一起工作:
4. “.dbml”是在使用 LINQ to SQL 时创建的:
:
实体框架更面向企业开发,其中架构通常针对存储考虑(例如性能一致性和分区)进行优化。 Entity Framework 是围绕公开一个面向应用程序的数据模型而设计的,该模型是松散耦合的,可能与现有的数据库模式不同。例如,您可以将单个实体(类)映射到多个或将多个实体映射到同一个表。实体框架在应用程序中添加时具有“.edmx”(ADO.NET 实体模型)文件。
LINQ to SQL 主要具有支持针对 SQL Server 进行快速应用程序开发的功能。 LINQ to SQL 允许您拥有现有数据库模式的强类型视图。您可以在表上构建 LINQ 查询并将结果作为强类型对象返回。添加到应用程序中时,LINQ to SQL 具有“.dbml”(LINQ to SQL)文件。您可以通过使用属性装饰现有类来使用 LINQ to SQL。
[原文来源:https://parassanghani.blogspot.com/2011/01/entity-framework-vs-linq-to-sql.html]
【讨论】:
我从来没有像定义那样理解文献。无论如何,底线是 L2S 是轻量级的,而 EF 是重量级的。这意味着 L2S 仅适用于 SQLServer,而 EF 则适用于更多。
【讨论】:
edmx 是 Entity Framework 的建模文件。
dbml 是 Linq 2 Sql 的建模文件。
您应该花时间学习实体框架,因为 Linq 2 Sql 已被弃用。
【讨论】:
LINQ to SQL 主要具有支持针对 SQL Server 进行快速应用程序开发的功能。 LINQ to SQL 允许您拥有现有数据库模式的强类型视图。您可以在表上构建 LINQ 查询并将结果作为强类型对象返回。添加到应用程序中时,LINQ to SQL 具有“.dbml”(LINQ to SQL)文件。您可以通过使用属性装饰现有类来使用 LINQ to SQL。
【讨论】:
.edmx 是实体框架。 .dbml 是 LINQ-to-SQL。虽然它们的通用目的相同,但它们是完全不同的框架。 Entity Framework 较新,可能是您学习时间的最佳投资,因为我怀疑这将是很多创新的方向。
【讨论】: