EF 4.5 を使用して、次のステートメントでゼロ カウント サブクエリ (relatedDrivers) を null に変換したいと考えています。
var query = from car in context.tblCar
let relatedDrivers = (from driver in context.tblDriver
where driver.CarId == car.CarId
select driver)
select new
{
CarId = car.CarId,
Drivers = relatedDrivers.Count() == 0 ? null : relatedDrivers
};
しかし、「System.Linq.IQueryable`1」型の null 定数値を作成することは不可能であるという「NotSupportedException」が表示されます。Entity Framework がこのクエリを T-SQL に変換するのが非常に難しいのはなぜでしょうか。サブクエリを調べて、結果カウントがゼロの場合に NULL を返すことは、それほど複雑ではないようです。
解決策と説明は大歓迎です。