0

我对微软开发的几个数据映射器感到困惑。

我想知道我们如何快速识别 DAL 中使用了哪个映射器。

我猜,如果.dbml文件是 Linq-to-SQL 和.edmx文件,它将是实体框架。

有人可以建议我们如何正确识别使用哪个映射器???

提前致谢...

4

2 回答 2

1

正确的是,当您拥有 .dbml 文件时,该项目正在使用 linq to sql,而 .edmx 代表实体框架。

Linq to entity 不是另一种形式,它只是在使用实体框架时调用 linq 查询的方式,因为实体框架生成的类称为“实体”,它只是一种命名约定来说明差异,例如

  • Linq to Sql(仅此映射器和 Linq 命名约定共享相同的名称)
  • Linq 到实体
  • LINQ转XML
  • Linq 到对象
  • Linq 到 Sharepoint
  • Linq 到数据集

如果您想弄清楚您是否在实体框架中使用 DbContext 或 ObjectContext API,您必须找到上下文类,它完成整个工作并查看其继承的内容。

public class Entities : DbContext

或者

public class Entities : ObjectContext

如果您在解决方案资源管理器中看到 .edmx 根目录下的 t4 模板,您也可以弄清楚,它们被称为“ModelName”.tt 和“ModelName”.Context.tt,如果这些文件存在,那么您正在使用 DbContext API,如果不是 ObjectContext。

于 2013-08-29T07:27:08.063 回答
0

是的,你是对的.. 如果 .dbml 文件是 linq to sql 和 .edmx 文件,它将是实体框架。

于 2013-08-29T07:18:21.793 回答