数据点 - 兵不血刃拒绝对Entity Framework的表访问2010-11-18 MSDN Julie Lerman

在看到实际的 Entity Framework 命令创建之后,数据库所有者的第一反应往 往是:“什么? 我必须提供对表的访问权?”他们有这种反应是因为 Entity Framework 的核心功能之一便是生成 SELECT、UPDATE、INSERT 和 DELETE 等命令。在本专栏中,我将带领数据库管理员了解一下 Entity Framework 如何生成命 令,然后介绍一些功能,您可以利用这些功能只允许 Entity Framework 使用视 图与存储过程,从而限制 Entity Framework 对您数据库的访问。 而与此同时, 您不会对应用程序代码产生任何影响,也不会疏远与团队中开发人员之间的关系 。认识默认命令生成这一命令生成过程是如何实现的? Entity Framework 的要点是实体数据模型 (EDM),一个用于描述应用程序域对象的概念 模型。 Entity Framework 让开发人员可以针对实体数据模型提出查询,而不必 操心数据库的具体操作。 实体数据模型的实体以及实体之间的关系以 XML 形式 定义,而开发人员基于该模型的实体来处理强类型化类。 Entity Framework 运 行时使用实体数据模型的 XML 以及其他元数据(用于描述架构以及从实体 数据模型到数据库架构的映射关系)来沟通类与数据库(参见图 1)。

图 1 Entity Framework 运行时元数据用于生成数据库命令