2010-10-05 63 views
2

一键我有一个集合如下返回字典的子集的复杂类型与LINQ的

Private _bankRates As Dictionary(Of RateSourceBank.Key, RateSourceBank) 

哪里RateSourceBank.Key简直是

Public Class Key 
    Public RateType As String 
    Public EffectiveDate As DateTime 
End Class 

我怎样才能检索到的子集_bankRates每个RateType有多个EffectiveDate?

不幸的是,我发现所有类似的例子都是用C#编写的,而我对LINQ的翻译比较简单,尤其是对于语法组来说。下面

Dim ratesWithDuplicates = From rates In _bankRates 
          Group rates By rates.Key.RateType 
          Into grp() 
          Where grp.Count > 1 

查询我收到错误:

Definition of method 'grp' is not accessible in this context

回答

2

这里是你正在寻找

Dim ratesWithDuplicates = 
    From rates In _bankRates 
    Group rates By rates.Key.RateType Into Group 
    Where Group.Count() > 1 

表达/关键字Group表示该集合的片段。您可以使用name = Group语法给它一个不同的名称

Dim ratesWithDuplicates = 
    From rates In _bankRates 
    Group rates By rates.Key.RateType Into someName = Group 
    Where someName.Count() > 1