我尝试使用实体框架导入的数据库视图之一只包含两列,一列是整数类型的列,另一列是聚合函数。我收到以下错误。
The table/view does not have a primary key defined and no valid primary key could be inferred. This table/view has been excluded. To use the entity, you will need to review your schema, add the correct keys, and uncomment it.
我知道这是一个已知的场景,可以通过在视图中包含Key列或手动修改edmx文件来修复它。
我只是想知道除了上述两种解决方案之外是否还有其他解决方案?我不希望在我的查询中包含一个额外的列,并且在edmx中进行更改是不可行的,因为数据库更改非常频繁,每次从db更新时都会覆盖edmx。
答案 0 :(得分:0)
您可以直接在设计器中将这两个属性标记为实体键,但必须确保这两个属性的复合值始终是唯一的。如果您无法确保无论如何都必须添加另一个唯一列,或者在使用此类实体集时可能会遇到其他一些问题。