与Observable.Create从嘘的类型问题
-
27-10-2019 - |
题
我试图使用从嘘无扩展和正在运行到类型的问题。这里是基本的示例:
def OnSubscribe(observer as IObservable[of string]) as callable:
print "subscribing"
def Dispose():
print "disposing"
return Dispose
observable = System.Linq.Observable.Create[of string](OnSubscribe)
observer = System.Linq.Observer.Create[of string]({x as string | print x})
observable.Subscribe(observer)
这里的订阅给出了一个System.InvalidCastException:不能从源类型强制转换为目标类型。这个问题似乎是与我在如何创造可观的,但我在努力,看看那里的类型问题从出现。
想法?
解决方案
Observable.Create
需要Func<IObserver,Action>
,但你OnSubscribe
接受一个IObservable
。
尝试这种情况:
def OnSubscribe(observer as IObserver[of string]) as callable():
print "subscribing"
observer.OnNext("first and only value")
observer.OnCompleted()
def Dispose():
print "disposing"
return Dispose
observable = System.Linq.Observable.Create[of string](OnSubscribe)
observer = System.Linq.Observer.Create[of string]({x as string | print x})
observable.Subscribe(observer)
不隶属于 StackOverflow