首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

初学者求一Linq表达式

2011-12-14 
菜鸟求一Linq表达式下面的SQL 改成用 Linq 实现。SELECTc.id,c.CustomersName as name,f.FollowUpTheWay as

菜鸟求一Linq表达式
下面的SQL 改成用 Linq 实现。

SELECT
 c.id,
 c.CustomersName as name,
 f.FollowUpTheWay as names,
 f.NextFollowDate,
 f.FollowDate,
 f.id as fid
 from dbo.Slgl_CustomerReception as c 
 left join dbo.Slgl_FollowUpRecords as f on 
f.id = (select TOP(1) id from dbo.Slgl_FollowUpRecords where CustomersId = c.id and FollowDate <= '2011-7-20' order by id DESC)
where c.ProjectId = 9

简要写下就可以了 主要小括号里面的内容 不知道怎么转

[解决办法]

C# code
var query=from c in Slgl_CustomerReception           where c.ProjectId==9          let id=Slgl_FollowUpRecords.Where(r=>r.CustomerId==c.id                  && r.FollowDate<=Convert.ToDateTime("2011-7-20"))                 .OrderByDescending(r=>r.id).First().id          join f in Slgl_FollowUpRecords          on f.id equals id into g          from f in g.DefaultIfEmpty()          select new            {              id=c.id,              name=c.CustomersName,              names=f==null?"":f.FollowUpTheWay,              FollowDate=f==null?DateTime.Now:f.FollowDate,              fid=f==null?0:f.id            }; 

热点排行