我的模型看起来像:
City
CityBlocks
Houses
所以一个城市可以有很多街区,每个街区可以有很多房子。
在特定页面上,我有一个要显示的房屋 ID 列表。
该页面需要一个 City 对象,然后循环显示城市街区和房屋。
我害怕的一件事是,由于延迟加载,即使我根据房屋 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)
{
}
}