首页 > 解决方案 > GetAllIncluding 包含相关表的最后一条记录

问题描述

 var kitContents = await _kitItemRepository.GetAllIncluding(ki => ki.Campaign, ki => ki.Item, ki => ki.Comments.LastOrDefault()).Where(ki=>ki.KitId == input.kitId).ToListAsync();

我期待只有最后一条记录(鉴于有评论),但它会引发错误。

System.InvalidOperationException: '包含属性 lambda 表达式'ki => {ki.Comments => LastOrDefault()}' 无效。该表达式应表示属性访问:'t => t.MyProperty'。要定位在派生类型上声明的导航,请指定目标类型的显式类型化 lambda 参数,例如 '(Derived d) => d.MyProperty'。有关包含相关数据的详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=746393

标签: c#entity-frameworkaspnetboilerplate

解决方案


你不能那样使用LastOrDefault()。获取所有评论并删除除最后一条之外的所有评论。


推荐阅读