我已经wriiten一个LINQ联接查询,我想取的值,如果其中一人是空的......LINQ的加入IQUERY,如何使用defaultifempty
代码:
var Details =
UnitOfWork.FlightDetails
.Query()
.Join
(
PassengersDetails,
x => x.Flightno,
y => y.FlightNo,
(x, y) => new
{
y.PassengerId,
y.classType,
x.Flightno,
x.FlightName,
}
);
我想使用类似..
"Above query".DefaultIfEmpty
(
new
{
y.PassengerId,
y.classType,
string.Empty,
string.Empty
}
);
“FlightDetails”是一类与“PassengerDetails” Idatarepository类型是IQueryable的局部变量的结果。如何获得乘客身份和乘客类型的结果,并且不包含整体结果中的航班号和航班名。
我不知道,如果'DefaultIfEmpty()'将与匿名方法的工作。尝试定义一个类并使用它。 –
您正在寻找已在其他问题中得到解答的“Left Outer Join”的语法。这里是方法/ Lambda LINQ语法的第一个:http://stackoverflow.com/questions/584820/how-do-you-perform-a-left-outer-join-using-linq-extension-methods – Ocelot20