gpt4 book ai didi

c# - 如何设置相关实体​​的计数属性而无需执行额外查询或包含不必要的数据

转载 作者:太空宇宙 更新时间:2023-11-03 13:19:49 24 4
gpt4 key购买 nike

我有一个类“Campaign”,它有一个导航属性“Students”。事件类有一个属性“StudentsCount”来存储学生的数量。我不想在查询结果中包含所有学生。如何在附加各自的学生人数的同时查询事件?理想情况下,我不想在初始查询后遍历我的所有事件以获取计数。

IQueryable<TEntity> query = this._objectSet.AsQueryable(); //this is my campaigns object set
query = query.Where(c => c.UserId == id);
query = query.Include("");
return query.ToArray();

更新:--请注意,我的初始查询正在获取多个广告系列

我在想也许我可以用一个 select 做一些事情,但我不确定如何完成这个

最佳答案

在不加载子项集合的情况下查询计数称为额外惰性查询,如果您需要该术语以允许您使用 Google 解决此问题。

在这种情况下,你会做这样的事情:

var campaign = query.Single();
var studentsQuery = context.Entry(campaign).Collection(c => c.Students).Query();
var count = studentsQuery.Count();

这将具体化实体的数量,而无需将它们全部带回来。

关于c# - 如何设置相关实体​​的计数属性而无需执行额外查询或包含不必要的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24743158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com