2010-04-19 52 views
7

我正在从C#转换此LINQ表达式。但是,它似乎并不奏效。如何在VB.NET中使用“Into”LINQ表达式?

C#

return (from w in fishSticks 
     group w by w.FishQty into g 
     orderby g.Key descending 
     select g).First().First(); 

VB

Return (From w In fishSticks 
     Group w By w.FishQty Into g() 
     Order By g.Key Descending 
     Select g).First().First() 

的Visual Studio打开Into gInto g()自身,然后给了我这个错误:

Definition of method 'g' is not accessible in this context.

任何想法?

回答

11

VB.Net has different group syntax

正确的语法是

Dim q = (From w In fishSticks 
     Group By Quantity = w.FishQty Into g = Group 
     Order By Quantity Descending 
     Select g).First().First() 
+1

我想这一点;它实际上编译。 – SLaks 2010-04-19 14:57:23

+3

非常好,它完美的作品。 VB是我生命中的祸根。谢谢你的帮助。 – NibblyPig 2010-04-19 15:24:52