首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用实体框架6.1和MVC5为自引用创建CRUD

使用实体框架6.1和MVC5为自引用创建CRUD
EN

Stack Overflow用户
提问于 2014-10-13 06:50:24
回答 1查看 319关注 0票数 1

我是实体框架的新手,但我正在使用EF6.1和MVC5,并试图构建一个与其自身相关的Course实体( Course有一个一对一或一对多的预请求过程)。我如何使用EF和CRUD功能来实现这一点?

我的模型如下:物理模型有一个与Course匹配的Course表和一个有3列的prereq表:prereqIdcourseNopreReqCourseNo

代码语言:javascript
运行
复制
public class Course
{
    public int CourseId { get; set; }
    public string CourseNumber { get; set; }
    public string CourseName { get; set; }
    public decimal Credits { get; set; }
    public bool? PreReq { get; set; }
    public virtual ICollection<DeptCourse> DeptCourse  { get; set; }
    public virtual ICollection<Course> PreReq { get; set; }
}

我们的目标是能够在create页面中定义这些属性,这样用户就可以从下拉列表中选择一个或多个课程编号,并使用它们之间的关系更新这两个表。一门课程可以有一个或多个必修课。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-10-22 09:28:47

正如Basic建议的那样,我认为这真的是一个多对多的关系。但如果它真的是一对多,你可以这样做你的模型:

代码语言:javascript
运行
复制
 public class Course
    {
        public int CourseId { get; set; }
        public string CourseNumber { get; set; }
        public string CourseName { get; set; }
        public decimal Credits { get; set; }
        public bool? PreReq { get; set; }
        public int DepartmentID { get; set; }

        public int? PreRequisiteForCourseId {get; set;}
        public virtual Course PreRequisiteForCourse {get; set;}
        [InverseProperty("PreRequisiteForCourse")]
        public virtual ICollection<Course> PreReq { get; set; }
    }

在这种情况下,每门课程只能是一门课程的先决条件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26330814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档