加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

.net – 带有RX扩展的LINQ

发布时间:2020-12-17 07:11:07 所属栏目:百科 来源:网络整理
导读:我认为LINQ查询语言适用于IObservable,就像使用ReactiveExtensions的IEnumerable一样.我有以下代码 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
我认为LINQ查询语言适用于IObservable,就像使用ReactiveExtensions的IEnumerable一样.我有以下代码

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,但除此之外它看起来很好.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读