如何解决实体框架与1对多-多对11--* *-1关系
| Iam会花一些时间弄清楚如何从数据表中获取数据(MSSQL 2008)。问题是这样。您有3张桌子: 表1(作业):JobID,JobName 表2(工作人员):WorkerID,WorkerName 表3(Worker2Job):RowID,WorkerID,JobID 我假设JOB可以由许多工作人员完成,所以我需要\“ Worker2Job \”表。所以我可以输入JobID:1由WorkerID1和WorkerId2等组成... 现在使用实体框架,我不知道如何获取第一个worker的\“ WorkerName \”属性(也不获取任何其他worker列表)。 有任何想法吗 ?! 提前谢谢!解决方法
Worker2Job
中不需要任何特殊的RowId
。只需用两列定义Worker2Job
:WorkerId
和JobId
,并使这两列成为表的主键。将所有三个表添加到实体设计器后,它将自动看到多对多关系,并仅在模型中创建两个具有正确关系的实体。 “ 5”实体将具有“ 6”导航属性,而“ 7”实体将具有“ 8”导航属性。您将能够编写查询,例如:
var query = context.Jobs.Include(\"Worker\").Where(j => j.JobId == someId);
这样的查询将向所有相关工作者加载职位,您将可以访问他们的姓名。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。