それは有効な c# としてもコンパイルされませんが、探しているのは次のようなものだと思います。
var results =
from j in job
from jp in j.JobParts
where j.CustomerID == 1
select new { jp.PickupAddress, jp.DestinationAddress };
JobParts
これは、との間に適切なナビゲーション プロパティが設定されていると仮定して機能しますAddresses
。
これは次のように非常に簡単に使用できます。
foreach(var record in results)
{
var pickupHouseNo = record.PickupAddress.HouseNo;
var pickupStreet = record.PickupAddress.Street;
// ...
var destinationHouseNo = record.DestinationAddress.HouseNo;
var destinationStreet = record.DestinationAddress.Street;
// do stuff
}
本当にフラットなクエリ結果が必要な場合は、これを使用してください。
var results =
from j in job
from jp in j.JobParts
where j.CustomerID == 1
select new
{
PickupHouseNo = jp.PickupAddress.HouseNo,
PickupStreet = jp.PickupAddress.Street,
// ...
DestinationHouseNo = jp.DestinationAddress.HouseNo ,
DestinationStreet = jp.DestinationAddress.Street,
};