我有一個結果類:鑄造的LINQ IEnumerable的類繼承了IEnumerable
Public Class AResultSet
Implements IEnumerable(Of ConcreteResult)
Private _list As List(Of ConcreteResult)
Public Sub New()
_list = New List(Of ConcreteResult)
End Sub
Public Function GetEnumerator() As System.Collections.Generic.IEnumerator(Of ConcreteResult) Implements System.Collections.Generic.IEnumerable(Of ConcreteResult).GetEnumerator
Return _list.GetEnumerator
End Function
Public Function GetEnumerator1() As System.Collections.IEnumerator Implements System.Collections.IEnumerable.GetEnumerator
Return _list.GetEnumerator
End Function
End Class
和LINQ查詢:
Dim res As AResultSet = (From pk In testPackages, _
pp In pk.PackagePriceCollection _
Select New ConcreteResult(pk, pp))
但我得到一個錯誤投。所以,如果我改變
Dim res As AResultSet
要:
Dim res As IEnumerable(Of ConcreteResult)
它的工作原理。但我想將linq查詢結果轉換爲AResultSet類型,該類型也是IEnumerable(OfConrecteResult)。
或者我在這裏做錯了什麼?