C# 如何关联实体中的数据?ASP.NET MVC 5 EF 6

C# 如何关联实体中的数据?ASP.NET MVC 5 EF 6,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我正在构建一个ASP.NET MVC应用程序,我不太确定如何在实体之间建立一些关系 我有以下实体 namespace Entities { public class Person { public int Id { get; set; } public string Name { get; set; } public string Surname { get; set; } } public class Class

我正在构建一个ASP.NET MVC应用程序,我不太确定如何在实体之间建立一些关系

我有以下实体

namespace Entities
{
    public class Person
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Surname { get; set; }
    }

    public class Classroom
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Capacity { get; set; }
    }

    public class CoffeeSpace
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Capacity { get; set; }
    }
}
我的问题是:一场培训活动将在一所学校举行。培训人员将分布在不同容量的教室中,培训将分两步进行。还将有两个咖啡休息时间,有两个不同的区域

应用程序应允许:

  • 登记姓名和姓氏
  • 登记教室名称和容量
  • 登记咖啡区的名称和容量
每个教室的人数差异不得超过1人。为了促进知识交流,在培训的每一步之间,每个教室中有一半的人应该转移到另一个教室

咨询在本次活动中注册的人员时,应用程序应返回该人员将在培训的每个步骤中停留的教室以及他们将在其中进行每次咖啡休息的区域

当咨询在本次活动中注册的教室或咖啡区时,应用程序应返回在活动的每个步骤/休息期间将在该教室/区域的人员列表


一般来说,我不熟悉编程,我知道使用实体框架可以在实体之间建立某种关系,但看着它,我完全不知所措,似乎无法理解在这个问题中应该使用哪种类型的关系。

我会使用“人与教室之间”的中间表来解决这个问题,将其命名为PersonxClass:

public class PersonxClass 
{
    public int Id { get; set; }
    public int PersonId { get; set; }
    public int ClassId { get; set; }
}
在此实体中,我将保存特定教室中的人员。好的,第二步,我将在Person和CoffeeSpace之间创建另一个实体,将其命名为PersonxOffee:

public class PersonxCoffee 
{
    public int Id { get; set; }
    public int PersonId { get; set; }
    public int CoffeeId { get; set; }
}
等于前一种情况,在此实体中,我将为每个咖啡空间保存人员数据。 我等着这些信息对你有帮助