linq - 实体框架核心订购一个包含
问题描述
我有一个 .NET Core 2 Web 应用程序,它在数据库中有 Eshop 产品和价格。我正在使用实体框架核心。产品可以有很多价格,并且可以在许多 Eshop 中找到。我正在制作 API,我需要它返回 Product 及其价格,并且这些价格必须由 Eshop ID 订购。
我正在尝试的是:
context.Products.Include(v => v.Prices.OrderBy(pr=>pr.EshopId)).ThenInclude(e=>e.EShop).Take(100).ToListAsync();
但是在尝试访问创建的 API 时出现错误:
处理请求时发生未处理的异常。InvalidOperationException:属性表达式“v => {from Price pr in v.Prices orderby [pr].EshopId asc select [pr]}”无效。该表达式应表示属性访问:'t => t.MyProperty'。有关包含相关数据的详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=746393。
Microsoft.EntityFrameworkCore.Query.ResultOperators.Internal.IncludeExpressionNode.CreateResultOperator(ClauseGenerationContext 子句GenerationContext)
我应该做些什么来达到我想要的结果?
解决方案
推荐阅读
- visual-studio-code - 如何在 VSCode 中查找命令标识符?
- ios - PC 和 Mac 之间是否有任何键盘字符代码差异?
- java - 这段代码中序遍历有什么问题?
- javascript - 评估表示为字符串的嵌套函数调用
- android-studio - 预览被隐藏且不显示
- ios - Css 不适用于我的流星 iOS 应用程序,但在浏览器中它可以完美运行
- ionic-framework - Ionic 4 存储问题:没有存储提供者
- angular - 组件选择器不是已知元素
- typescript - 为什么可选对象成员的类型为“从不”?
- android - 如何设置 LiveData 以执行基于多个参数的搜索?