【发布时间】:2009-12-08 14:02:52
【问题描述】:
我有一个结果集类:
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(Of ConrecteResult)。
还是我在这里做错了什么?
【问题讨论】:
标签: linq ienumerable casting