在视图中创建两列主键

时间:2012-04-16 16:50:06

标签: c# .net entity-framework primary-key edmx

在SQL Server Management Studio中,您可以在Designer中编辑表格,选择两列,右键单击并将其作为主键。

是否有可能为视图执行此操作?

通常,当我在数据库中有视图时,需要一些列为NOT NULL。然后在Entity Framework 4中执行Update Model From Database(在.edmx文件设计视图中)导入视图,因为一列是NOT NULL,所以它使该列成为主键。如果没有NOT NULL列,则拒绝将视图导入模型。 问题是,我现在有一个视图,其中没有单个列可能是主键,只有两列组合。如何让Entity Framework接受这两列作为主键。

或者我可以在视图中添加一个新列(可能称为Identity)并将此列作为主键吗?我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

在EF中,您只需在desinger中选择您的实体,并将任何属性(或属性集)设置为实体键。数据库视图不能有主键,你可以制作索引视图,但EF很可能会忽略它。