2014-02-18 112 views
-2

您好我有下面的SQL语句我想将其转换为lambda表达式或LINQ转换SQL到lambda表达式或LINQ

select 
a.lid 
,a.name 
,a.notes 
,lrh.e 
,lrh.date 
from rate a 
left outer join lab_history lrh on(lrh.lab_id=a.lid) 

请让我知道如何改变这lambda表达式或LINQ。由于

+1

[101个LINQ示例 - LEFT OUTER JOIN(http://msdn.microsoft.com/en-us /vcsharp/ee908647.aspx#leftouterjoin) – Damith

回答

1

您可以使用此查询:

from a in db.rate 
join lrh db.lab_history on a.lid equals lrh.lab_id 
into lrhs 
from lrh in lrhs.DefaultIfEmpty() 
select new 
    { 
     lid = a.lid, 
     ... another props 
    } 
0

您可以尝试

var labRateObj = (from a in ContextObj.rate 
     join lrh in ContextObj.lab_history on a.lid equals lrh.lab_id into labrate 
     from s in labrate.DefaultIfEmpty() 
    select new { 
    lid = a.lid, 
    name = a.name, 
    notes = a.notes, 
    e = lrh.e, 
    date = lrh.date 

    });