Объединение в структуре сущностей

У меня есть две таблицы: Транспорт и Рабочие.

Vehicle(Id, Number)
Workers(Id, Name, ContractorVehicleNumber)

Я хотел бы написать лямбда-запрос, чтобы вернуть все автомобили и транспортные средства подрядчика. Что-то вроде sql:

SELECT Id, Number
FROM Vehicle
UNION
SELECT NULL, ContractorVehicleNumber
FROM Workers

Вот что я сделал:

public IQueryable<Vehicle> Get(bool includeContractorVehicles)
{
    IQueryable<Vehicle> query = GetQuery();

    if (includeContractorVehicles == true)
    {
        WorkerRepository rep = new WorkerRepository();
        IQueryable<Vehicle> contractorsVehicles = rep.GetWirkers().
            Select(x => new Vehicle()
            {
                VehicleNumber = x.ContractorVehicleNumber
            });
        query = query.Union(contractorsVehicles);
    }

    return query;
}  

Но я получаю исключение:

Сущность или сложный тип «XXXXXXXX» не может быть сконструирован в запросе LINQ to Entities.

16
задан abatishchev 21 January 2015 в 00:47
поделиться