我正在尝试使用实体框架来构建数据库,我需要一些模型帮助:
模型是:公司、部门、用户、TaskType1、TaskType2、TaskType3
public class Company
{
public Company()
{
this.Departments = new HashSet<Department>();
}
public int Id { get; set;}
public string CompanyName { get; set;}
public string Address { get; set;}
public string Phone { get; set;}
public virtual ICollection<Department> Departments { get; set;}
}
public class Department
{
public Department()
{
this.Users = new HashSet<User>();
}
public int Id { get; set;}
public string Name { get; set;}
public virtual Company Company { get; set;}
public virtual ICollection<User> Users { get; set;}
}
public class User
{
public Company()
{
}
public int Id { get; set;}
public string UserName { get; set;}
public string FullName { get; set;}
public virtual Department Department { get; set;}
}
public class TaskType1
{
public TaskType1()
{
}
public int Id { get; set;}
public string Name { get; set;}
public string Description { get; set;}
public int Priority { get; set;}
}
public class TaskType2
{
public TaskType2()
{
}
public int Id { get; set;}
public string Name { get; set;}
public string Description { get; set;}
public int Priority { get; set;}
public double EstimatedCosts { get; set;}
}
public class TaskType3
{
public TaskType3()
{
}
public int Id { get; set;}
public string Name { get; set;}
public string Description { get; set;}
public int Priority { get; set;}
public bool IsDone { get; set;}
}
我需要将 TaskType1、TaskType2、TaskType3 作为表的原因是因为任务类型不同(需要不同的数据/字段)。
如何将我的任务类型连接到公司、部门和用户,以便获得如下结果:
- 每个公司 X 的所有任务
- 从公司 x 分配给部门 z 的所有任务
- 公司 x 部门 z 分配给用户 w 的所有任务
PS任务类型有共同的和不同的列