小编leo*_*leo的帖子

Entity Framework Core:需要 LINQ 建议使用包含关系表的更好方法

我有关于 Entity Framework Core 和使用 LINQ 的问题。我想在访问Clients表时获取其他表的详细信息。我可以使用下面的代码获取它们。我总共需要加入大约 10 个表,在这种情况下,下面的方法是好的还是其他更好的方法?ClientId是所有表的外键。

实际上我收到如下警告

[09:34:33 警告] Microsoft.EntityFrameworkCore.Query 编译一个查询,该查询通过“包含”或通过投影加载多个集合导航的相关集合,但尚未配置“QuerySplittingBehavior”。默认情况下,实体框架将使用“QuerySplittingBehavior.SingleQuery”,这可能会导致查询性能降低。有关详细信息,请参阅https://go.microsoft.com/fwlink/?linkid=2134277 。要识别触发此警告的查询,请调用“ConfigureWarnings(w => w.Throw(RelationalEventId.MultipleCollectionIncludeWarning))”

代码:

var client = await _context.Clients
                .Include(x => x.Address)
                .Include(x => x.Properties)
                .Include(x => x.ClientDetails)
                -------------------
                -------------------
                -------------------
                -------------------
                .Where(x => x.Enabled == activeOnly && x.Id == Id).FirstOrDefaultAsync();
Run Code Online (Sandbox Code Playgroud)

c# linq entity-framework-core

23
推荐指数
1
解决办法
3万
查看次数

标签 统计

c# ×1

entity-framework-core ×1

linq ×1