私のモデルは次のようになります。
City
CityBlocks
Houses
したがって、都市には多くの都市ブロックがあり、各都市ブロックには多くの家があります。
特定のページに、表示したいハウス ID のリストがあります。
このページは City オブジェクトを想定しており、ループして市区町村、住宅の順に表示します。
私が恐れていることの 1 つは、遅延読み込みのために、家の ID のリストに基づいて物を読み込んでも、遅延読み込みのためにすべての街区と家が表示されることです。
このページでこの状況を回避するにはどうすればよいですか? (使用しているため、遅延読み込みをグローバルに無効にすることはできません)。
アップデート
だからこれは私がやっていることです:
var repository = new GenericRepository<Home>();
var homes = repository.Get(home => homeIdList.Contains(home.Id),
includeProperties: "CityBlock, CityBlock.City")
.ToList();
City city = homes.Select(h => h.CityBlock.City).Distinct().FirstOrDefault();
しかし、それは機能していません。都市をループすると、すべてが読み込まれます。
@foreach(var block in city.CityBlocks)
{
foreach(var house in block.Houses)
{
}
}