【发布时间】:2014-11-07 16:59:21
【问题描述】:
我开始学习 MVC,并尝试使用实体框架代码优先方法创建数据库。我有一个学生表和一个科目表,每个学生可以有多个科目,一个科目可以有多个学生。链接器表有一个成绩列,因为每个学生对每个科目都有不同的成绩。我在尝试创建数据库时遇到错误,告诉我在模型生成期间检测到一个或多个验证错误。这是我的模型。
public class Course
{
[Key]
public int CourseId { get; set; }
public string CourseName { get; set; }
public List<Student> Students { get; set; }
}
public class Student
{
[Key]
public int StudentId { get; set; }
public string Name { get; set; }
public List<Course> Courses { get; set; }
}
public class StudentCourses
{
[Key]
public Course Course { get; set; }
[Key]
public Student Student { get; set; }
public double Grade { get; set; }
}
public class CourseDb: DbContext
{
public DbSet<Course> Courses { get; set; }
public DbSet<Student> Students { get; set; }
public DbSet<StudentCourses> StudentCourses { get; set; }
}
我搜索了一下,看到了一些处理多对多关系的方法,但没有一个在链接器表中有额外的属性(Grade 属性)。
【问题讨论】:
-
请不要将 MVC 与实体框架混淆。它们是两种独立的技术。
标签: entity-framework ef-code-first