C# 可观察的。创建不';t工作和可观察的、可计算的块
为什么下面的代码不起作用C# 可观察的。创建不';t工作和可观察的、可计算的块,c#,linq,ienumerable,.net-4.5,system.reactive,C#,Linq,Ienumerable,.net 4.5,System.reactive,为什么下面的代码不起作用 var observable = Observable.Create<int>(o => new Action(() => { o.OnNext(0); o.OnCompleted(); })); foreach (var item in observable.ToEnumerable()) // <-- Here blocks { // Never get here } var observable=obser
var observable = Observable.Create<int>(o => new Action(() =>
{
o.OnNext(0);
o.OnCompleted();
}));
foreach (var item in observable.ToEnumerable()) // <-- Here blocks
{
// Never get here
}
var observable=observable.Create(o=>newaction(()=>
{
o、 OnNext(0);
o、 未完成();
}));
foreach(observable.ToEnumerable()中的var项)/这是不正确的:
var observable = Observable.Create<int>(o => new Action(() =>
{
o.OnNext(0);
o.OnCompleted();
}));
或者这个:
var observable = Observable.Create<int>(o =>
{
o.OnNext(0);
o.OnCompleted();
return Disposable.Empty; // using System.Reactive.Disposables;
});
var observable=observable.Create(o=>
{
o、 OnNext(0);
o、 未完成();
return Disposable.Empty;//使用System.Reactive.Disposables;
});
这是不正确的:
var observable = Observable.Create<int>(o => new Action(() =>
{
o.OnNext(0);
o.OnCompleted();
}));
或者这个:
var observable = Observable.Create<int>(o =>
{
o.OnNext(0);
o.OnCompleted();
return Disposable.Empty; // using System.Reactive.Disposables;
});
var observable=observable.Create(o=>
{
o、 OnNext(0);
o、 未完成();
return Disposable.Empty;//使用System.Reactive.Disposables;
});
你说得对。我没有正确地理解这一点。行动不定义屈服,而是处置。因此,ToEnumerable
块,因为OnCompleted
从未发生过,而且我作为dispose方法的操作正在等待OnCompleted
,因此也从未调用过。请更正,ToEnumerable
块,直到OnNext
,直到完成
。你是对的。我没有正确地理解这一点。行动不定义屈服,而是处置。因此,ToEnumerable
块,因为OnCompleted
从未发生过,而且我作为dispose方法的操作正在等待OnCompleted
,因此也从未被调用。请更正,ToEnumerable
块直到OnNext
,直到OnCompleted
。
var observable = Observable.Create<int>(o =>
{
o.OnNext(0);
o.OnCompleted();
return Disposable.Empty; // using System.Reactive.Disposables;
});