Ser*_*hov 14 c# system.reactive
比方说,我们有一个班级:
public class Foo
{
public string Do(int param)
{
}
}
Run Code Online (Sandbox Code Playgroud)
我想创建一个由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);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5612 次 |
| 最近记录: |