【发布时间】:2021-05-13 04:00:43
【问题描述】:
我有一个有效的查询,但大部分空间仅用于一次检查以考虑 IQueryable 是否为空,并且基于整个查询重复。您能否帮我想出一个可能不需要此检查的实现。
IQueryable<Customer> customers = null;
if (customers != null)
customers.Concat(_context.Developers.Include(s => s.Project)
.ThenInclude(op => op.Customer)
.Where(developer=> developer.DeveloperId == userId).Select(developer => developer.Project.Customer));
else
customers = _context.Developers.Include(s => s.Project)
.ThenInclude(op => op.Customer)
.Where(developer=> developer.DeveloperId == userId).Select(developer => developer.Project.Customer));
我已经尝试将客户初始化为
customers = Enumerable.Empty<T>().AsQueryable();
这导致另一个异常:源 IQueryable 的提供程序没有实现 IAsyncQueryProvider。
【问题讨论】:
-
您是否在 userId 值列表上循环?
-
我有一个开发者模型,基本上是一个中间表,其中包含一个项目列表和一个开发者 ID。与该开发人员关联的项目是该开发人员被分配工作的项目。
-
我需要提取位于项目记录中的客户记录
-
不,userId是单数字符串值
标签: entity-framework linq asp.net-core-webapi