繁体   English   中英

EF Core,基于枚举以一对一关系查询数据

[英]EF Core, querying data with one-to-one relationship based on an enum

所以我有这些桌子在此处输入图像描述

这里的主表是entry ,它有一个字段typetype是一个枚举,它可以是textphrase ,那么我如何在我的 EF 查询中包含这些表中的相应数据?

如果我使用另一个连接表而不是这个枚举,那会更好吗?比如在条目和不同类型的details之间放置细节?

如何将这些表中的相应数据包含到我的 EF 查询中?

您可以通过以下方式实现:

var result = from e in context.entries
             join t in context.texts
                on e.entryId equals t.entryId into tJ
             from t in tJ.DefaultIfEmpty()
             join p in context.phrases
                on e.entryId equals p.entryId into pJ
             from p in pJ.DefaultIfEmpty()
             select new
             {
                 Entry = e,
                 Text = t,
                 Phrase = p
             };

在结果集中,每个Entry将根据其类型加载相应的TextPhrase ,其他字段将为 null

如果我使用另一个连接表而不是这个枚举,那会更好吗?比如在条目和不同类型的细节之间放置细节?

你根本不需要这个枚举。 您可以使用上面的查询在entryId的帮助下加载项目

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM