2010-12-15 7 views
2

Comment écrire ce SQL dans Linq to SQL en utilisant C#. Je ne peux pas obtenir la jointure à la table d'état à ConsumerApplications et RepairOrderEstimates pour fonctionner correctement. Merci.Linq to SQL Rejoindre la même table Deux fois pour deux tables différentes

select ca.ConsumerAppID, 
     ca.LastName, 
     statConsumerApp.StatusName, 
     statRepairOrderEstimates.StatusName 
    from ConsumerApplications ca 
    join RepairOrderEstimates 
    on ca.RepairOrderEstimateID = RepairOrderEstimates.RepairOrderEstimateID 
    join Statuses statConsumerApp 
    on ca.StatusID = statConsumerApp.StatusID 
    join Statuses statRepairOrderEstimates 
    on RepairOrderEstimates.StatusID = statRepairOrderEstimates.StatusID 

Répondre

1

Je pense que vous pouvez le faire avec quelque chose comme

from ca in ConsumerApplications 
join est in RepairOrderEstimates on ca.RepairOrderEstimateID == est.RepairOrderEstimateID 
join statConsumerApp in Statuses on ca.StatusID == statConsumerApp.StatusID 
join statEstimate in Statuses on est.StatusID == statEstimate.StatusID 
select new { 
    ConsumerAppID = ca.ConsumerAppID, 
    LastName = ca.LastName, 
    AppStatus = statConsumerApp.StatusName, 
    EstimateStatus = statEstimate.StatusName, 
} 
Questions connexes