2013-12-10 85 views
0

我想将下面vb中的链接查询转换为C#。我从来没有以前做过VB和LI​​NQ查询之前,我已经转换为SQL,但是什么会变成这样在LINQ C#,将VB linq转换为C#linq

VB脚本

Dim d = (From p In db.tblkeyPages Join keypagetype In db.tblkeyPageTypes On p.keyPageType Equals keypagetype.keyPageType Where keypagetype.keyPageType = 1 Select p.pageContent).First 

SQL

select d.keyPageType, d.pageContent from dbo.tblkeyPage as d 
join (select keyPageType from dbo.tblkeyPageType)as s 
on d.keyPageType = s.keyPageType 
where s.keyPageType = 1 
+0

转换为C#有什么进展吗? –

+0

@ X.L.Ant:你应该先试试这个。 –

回答

2

这里是很好的起点点:Introduction to LINQ Queries (C#)

var content = (from p in db.tblkeyPages 
       join keypagetype in db.tblkeyPageTypes 
        on p.keyPageType equals keypagetype.keyPageType 
       where keypagetype.keyPageType == 1 
       select p.pageContent).First(); 

另外我建议你花时间学习C#s yntax。正如你所看到的,查询看起来几乎一样(只是关键字是小写的,因为C#是区分大小写的语言)

还要说明一点 - 如果你想避免异常,然后用FirstOrDefault(),而不是First()当它是可能的查询不会返回任何结果。

+1

感谢您的帮助..链接确实有助于链接查询。 – user3086751