C# 尝试使用SingleOrDefault避免空引用

C# 尝试使用SingleOrDefault避免空引用,c#,ef-code-first,C#,Ef Code First,我有一个查询,它是从两个实体连接而来的 .GroupJoin(uow.Airports.List(),fbm=>fbm.FlyBillMains.AirPortId_Arrival,arr=>arr.AirPortId,(fbm,arr)=>new FlyBillMainDetails { BranchName = fbm.BranchName, C

我有一个查询,它是从两个实体连接而来的

.GroupJoin(uow.Airports.List(),fbm=>fbm.FlyBillMains.AirPortId_Arrival,arr=>arr.AirPortId,(fbm,arr)=>new FlyBillMainDetails
                   {
                       BranchName = fbm.BranchName,
                       CompanyCode = fbm.CompanyCode,
                       CompanyName = fbm.CompanyName,
                       CustomerName = fbm.CustomerName,
                       FlyBillMains = fbm.FlyBillMains,
                       PayTypeName = fbm.PayTypeName,
                       PolicyCode = fbm.PolicyCode,
                       CountryName = fbm.CountryName,
                       AirportNameArrival=arr.SingleOrDefault().Name,
                       Address = fbm.Address,
                       ShipperName = fbm.ShipperName,
                       ShipperAddress = fbm.ShipperAddress,
                       ShipperPhone = fbm.ShipperPhone,
                       ConsigeeName = fbm.ConsigeeName,
                       ConsigeeAddress = fbm.ConsigeeAddress,
                       ConsigeePhone = fbm.ConsigeePhone
                   })
在这一行

AirportNameArrival=arr.SingleOrDefault().Name
如果AirportNameArrival为空,我就得到了空引用 知道AirportNameArrival是字符串,您可以使用:

默认情况下,您还可以将其与组合以获取空字符串:

string AirportNameArrival = arr.SingleOrDefault()?.Name??"";
您可以使用:

默认情况下,您还可以将其与组合以获取空字符串:

string AirportNameArrival = arr.SingleOrDefault()?.Name??"";

是空引用已修复,但空值不显示在list@haithamsha您更喜欢
而不是
null
??
是否有帮助?是的,已修复空引用,但空值不显示在list@haithamsha您更喜欢
而不是
null
能帮上忙吗?不,我很困惑,工作很好:)不,我很困惑,工作很好:)