简单的 LINQ 查询:
from transport in db.Transports
select new
{
Current = transport.CurrentLocation,
CurrentCarriers = transport.CurrentLocation.Carriers,
};
问题:
CurrentLocation
可能为空。如果是,则执行此查询会引发 NullReference。我试着添加一个支票transport.CurrentLocation == null ? null : transport.CurrentLocation.Carriers
但是 Linq to sql 似乎无法解析。
任何不涉及为每个传输发送额外查询的不错的解决方案?
最佳答案
我通常只使用“让”。
from x in Foo
let y = x.Bar
where y != null
select y.Baz;
更新:
我觉得 ??运算符确实转换为 SQL。
关于c# - Linq 到 sql : properties of properties that may be null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/630827/