关于实体框架的最佳实践问题。
我有一个 Cases 表和一个 Users 表,我想将它们加入到多对多关系中。但是,我希望连接本身使用“UserType”字段存储有关该关系的信息。
在 SQL 中很容易做到 - 两个主要数据表和第三个数据表,它将两者与外键链接起来,并包含一个额外的 UserType 列。
create table #user ( UserId int, Info nvarchar(4000) )
create table #case ( CaseId int, Info nvarchar(4000) )
create table #jointable ( UserId int, CaseId int, UserType nvarchar(99))
让我感到困惑的是 EF 自己定义连接表的能力,将其从开发人员手中夺走。在这种情况下,我是否需要将这三个类都定义为 EF 类,或者有没有一种方法来构建它,我只定义两个类,Case 和 User,让 EF 为我处理连接,同时仍然获得我的 UserType?
我使用的是“代码优先”EF,而不是应该对解决方案产生很大影响。
干杯,马特