使用Entity Framework Plus加载多个级别时出现问题

时间:2018-01-19 07:08:49

标签: entity-framework-plus

我遇到了Entity Framework Plus的问题。我似乎无法让多个级别的加载工作。

以下查询正常。我让用户回到了预期的地址列表。

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .SingleOrDefault();

但是以下查询导致它崩溃。

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue).Select(a => a.AddressType))
                .SingleOrDefault();

我让用户回来,但现在我的地址列表为空。

我使用EF6和EF + v1.7.14.0

提前感谢任何可以提供帮助的人。

干杯 克雷格

1 个答案:

答案 0 :(得分:2)

Arrgh!多么麻烦啊!我需要在两个陈述中做到这一点......这真的很有道理。我正在选择地址类型并留下地址。

我的查询需要如下:

var user = _dataContext.Users
                .Where(u => u.UserName == username)
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue))
                .IncludeFilter(u => u.Addresses.Where(a => !a.Deactivated.HasValue).Select(a => a.AddressType))
                .SingleOrDefault();

谢谢我。你是冠军!