バナー、パック、ファイルの3つのエンティティがあります。
1つのバナーには多くのパックがあり、1つのパックには多くのファイルがあります。
すべてのバナーのすべてのファイル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親、MethodCallExpression呼び出し)で...
何が間違っているのかについて何か考えはありますか?
注:遅延読み込みを無効にしました。