【发布时间】:2021-02-11 20:18:13
【问题描述】:
我想向 IQueryable 添加一个虚拟成员并提出了以下解决方案:
IQueryable<Geography> geographies = _unitOfWork.GeographyRepository.GetAll(); //DbSet<Geography>
var dummyGeographies = new Geography[] { new Geography { Id = -1, Name = "All" } }.AsQueryable();
var combinedGeographies = geographies.Union(dummyGeographies);
var test = combinedGeographies.ToList(); //throws runtime exc
但它会抛出以下异常:
处理 LINQ 表达式 'DbSet .Union(EnumerableQuery { Geography, })' by 'NavigationExpandingExpressionVisitor' 失败。这可能表示 EF Core 中存在错误或限制。
我怎样才能让它工作?!
【问题讨论】:
-
var combinedGeographies = geographies.ToList().Union(dummyGeographies).ToList();? -
内存列表和数据库表不能合并,需要切换到客户端求值
标签: linq asp.net-core iqueryable