"实体类型没有定义键"例外

时间:2015-01-21 05:43:31

标签: c# .net entity-framework

我正在努力让页面中的About功能显示每个学生的注册日期,但我收到此错误:

enter image description here

1 个答案:

答案 0 :(得分:0)

实体框架通过其键区分其上下文中的不同对象。问题是Student实体没有定义任何键。如果你首先使用代码,也许你没有遵循任何约定 主键的约定是这样的

public int EntityNameID {get;set;}

public int Id {get;set;}
  

Code First推断,如果a上的属性属性是主键   class被命名为“ID”(不区分大小写),或者后面是类名   通过“ID”。如果主键属性的类型是数字或GUID它   将被配置为标识列。

您还可以将[Key][1]属性分配给您希望成为实体密钥的媒体资源。

另一种方法是使用流畅的API定义实体的密钥。

modelBuilder.Entity<Student>.HasKey(s => s.Id);