使用ASP.NET Core 2.1,请考虑以下代码:
var customer = await db.Customers
.Include(x => x.Address)
.Where(x => x.CustomerId == user.CustomerId)
.AsNoTracking()
.FirstOrDefaultAsync();
当我尝试检查客户的地址是否为null
时,
if (customer.Address != null)
{
// do stuff
}
并且该客户的地址不存在,则出现以下错误:
InvalidOperationException:生成警告'Microsoft.EntityFrameworkCore.Infrastructure.DetachedLazyLoadingWarning错误:...
但是,如果地址存在(即不 null
),那么一切正常。
是否有适当的方法来检查是否找到了急切加载的导航属性,并且仍然使用AsNoTracking
?