c# – 为方法创建IObservable有什么好办法?

前端之家收集整理的这篇文章主要介绍了c# – 为方法创建IObservable有什么好办法?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我们有一个类:
public class Foo
{
   public string Do(int param)
   {
   }
}

我想创建一个由Do方法生成的值的可观察值.一种方法是创建一个从Do调用的事件,并使用Observable.FromEvent创建observable.但不知何故,为了完成这项任务,我不会为创建事件感到好意.有没有更好的办法呢?

解决方法

马特的答案让我想到了:
public class Foo
{
    private readonly Subject<string> _doValues = new Subject<string>();

    public IObservable<string> DoValues { get { return _doValues; } }

    public string Do(int param)
    {
        var ret = (param * 2).ToString();
        _doValues.OnNext(ret);
        return ret;
    }
}


var foo = new Foo();
foo.DoValues.Subscribe(Console.WriteLine);
foo.Do(2);

猜你在找的C#相关文章