更新: 公司可以有多个项目,公司也有员工。员工只能拥有一家公司,而一个项目也只能拥有一家公司。 一个项目有几个任务。 在这些任务中,只会将员工分配给某些任务。
只能为员工分配他/她所分配到的项目的任务。
请查看以下内容并获取有关如何创建数据库设计和最终实体模型的帮助 更新图表基于以下两条评论: 如果这个ER图看起来不错,请提供有关如何创建EF 4.1实体类的指导,特别是对于EmployeeProjectTasks表。 我是EF 4.1 Code First的新手,想要创建这些类的方向
如果此ER图看起来不正确,请建议修订。
答案 0 :(得分:0)
答案 1 :(得分:0)
只能为员工分配他/她所分配到的项目的任务。
您的ER模型不强制执行此操作。
这是因为Project
和Task
之间存在非识别关系,因此ProjectID
的传播在菱形依赖关系的EmployeeProjectTask.ProjectID
分支中被截断。{{1仅引用EmployeeProject
(但不是Task
)。
确保EmployeeProjectTask
与来自相同 EmployeeProject
的{{1}}和Task
相关联的模型如下所示:
请注意Project
如何有一个复合PK Task
,{ProjectID, TaskNo}
如何在“分支”下传播,合并在“菱形“(产生Project.ProjectID
,FK同时为EmployeeProjectTask.ProjectID
和EmployeeProject
。