我们有一个表RequestApproval
,它使用两个字段来确定唯一性:RequestType
和RequestDetailID
。每种类型的请求都有自己的详细信息表,其主键映射到RequestDetailID
批准表。没有什么可以防止两个请求详细信息表具有重叠的 ID。这就是为什么该RequestType
字段是唯一约束的一部分。这是为了避免为每种类型的请求提供单独的批准表。
我们正在尝试将请求详细信息表配置为对其批准具有导航属性。最初,我们这样配置导航属性:
HasMany(r => r.RequestApprovals)
.WithOptional()
.HasForeignKey(q => q.RequestDetailId);
不幸的是,这获取了所有请求类型的批准。似乎没有办法告诉 Entity Framework 将结果限制为仅具有特定RequestType
.
我可以告诉 EF 按请求类型另外过滤吗?即使我必须修改 LINQ 查询以显式过滤,那也没关系。不幸的是,似乎没有办法增加 a.Include
以过滤掉结果。