我有 3 个实体:横幅、包和文件。
一个横幅有很多包,一个包有很多文件。
我需要获取所有横幅的所有文件 ID。我尝试了以下方法:
IList<BannerModel> banners = context.Banners
.OrderBy(x => Guid.NewGuid())
.Take(count)
.Select(x =>
new BannerModel {
Images = x.Packs.SelectMany(p => p.Files.Select(f => f.Id)).ToList()
}).ToList();
但是,我在选择文件 ID 时遇到错误:
System.NotSupportedException:LINQ to Entities 无法识别方法 'System.Collections.Generic.List
1[System.Int32] ToList[Int32](System.Collections.Generic.IEnumerable
1[System.Int32])' 方法,并且此方法无法转换为存储表达式。在 System.Data.Objects.ELinq.ExpressionConverter.MethodCallTranslator.DefaultTranslator.Translate(ExpressionConverter parent, MethodCallExpression call) 在 ...
知道可能出了什么问题吗?
注意:我禁用了延迟加载。