我认为LINQ查询语言适用于IObservable,就像使用ReactiveExtensions的IEnumerable一样.我有以下代码 Public Sub Foo(source As IObservable(Of Tuple(Of Integer, Integer))) Dim filtered = source.Where(Function(x) x.Item1 10).Sel
Public Sub Foo(source As IObservable(Of Tuple(Of Integer, Integer))) Dim filtered = source.Where(Function(x) x.Item1 > 10).Select(Function(x) x.Item1 + x.Item2) Dim filtered2 = From x In source Where x.Item1 > 10 Select x.Item1 + x.Item2 End Sub Public Sub Bar(source As IEnumerable(Of Tuple(Of Integer, Integer))) Dim filtered = source.Where(Function(x) x.Item1 > 10).Select(Function(x) x.Item1 + x.Item2) Dim filtered2 = From x In source Where x.Item1 > 10 Select x.Item1 + x.Item2 End Sub
IEnumerable版本的代码没问题.然而对于LINQ版的Foo(第二行)
我得到了一个迟到的绑定不允许的错误
x.Item1
当我将鼠标悬停在x上时,Intellisense表示它是object类型而不是
类型元组.但是对象查询版本的操作相同(第一行)
编译确定.我已经进口了
Imports system.reactive.linq
我错过了另一个参考吗?
你在问题中的所有代码都适用于我.我没有收到你的错误.也许尝试导入System.Reactive,但除此之外它看起来很好.