Private Sub LoadData(Of T)(ByVal query As ObjectQuery(Of T),
ByRef result As IEnumerable(Of T))
If Connection.State = ConnectionState.Open Then
result = query.ToArray
Else
AddHandler Connection.StateChange,
Sub(sender As Object, e As StateChangeEventArgs)
LoadData(query, result)
End Sub
End If
End Sub
在上面的代码中,我试图在连接不可用时递归 LoadData 函数,我想将加载推迟到它可用时。
问题是上面的代码会导致编译器错误,因为参数ByRef
不能在 lambda 表达式中使用。
知道如何以正确的方式做到这一点吗?