2013-03-18 13 views
-1

我从我的SQL Server数据库创建了一个实体数据模型。尽管我的每个表中只有一个主键,但几乎所有属性都标记为实体键。我当然可以修改这些,但是谁能告诉我为什么会发生这种情况?EntityFramework - 为什么这么多的实体键?

+0

SQL Server我假设?你确定你的桌子上有适当的主键吗? – 2013-03-18 19:51:27

回答

0

很可能默认情况下,它确定标记为键的列使得条目唯一。它也会对导入的视图执行此操作。

这就是说,我已经导入了具有唯一约束和主键的表定义,并没有看到这种行为。

0

使用Xml编辑器打开edmx文件(右键单击解决方案中的Edmx文件并选择“Open with ...”)。一旦完成,您将在文件中看到Xml注释,解释为什么现有的关键列可以通常这是因为该列是EF不支持的类型(例如HierarchyId),因此该列不受支持,因此被排除在外。这样,您最终得到的表格没有键列和人工键将在这种情况下被创建,其中包括键列的有效类型的所有类型的列(例如,因为它们不是有效的键列,所以空间类型的列将被排除在该列表之外,因为它们是EF)

相关问题