C# 可从 Func 委托观察

问题描述 投票:0回答:1

是否有方法或库函数可以通过调用来接受

Func<T>
return IObservable<T>

功能应该可能等于

public void Create<T>(Func<T> factory){
  try{
    return Observable.Return(factory());
  }
  catch(Exception ex){
    return Observable.Throw<T>(ex);
  }
}

对于这么简单的事情来说似乎有很多代码。有开箱即用的东西吗?

我检查了

Observable.Return
Observable.Generate
和其他一些,但找不到任何接受
Func<T>
委托的东西。

c# observable system.reactive reactive observer-pattern
1个回答
0
投票

您可以使用

Observable.Start()
方法从
Func<>
创建可观察量,如下所示:

Func<int> func = () => new Random().Next();

IObservable<int> obs = Observable.Start(func);

obs.Subscribe(it => Console.WriteLine(it));
© www.soinside.com 2019 - 2024. All rights reserved.