Надо застегнуть две наблюдаемые вместе - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь объединить две наблюдаемые последовательности.

Source1 = Observable<int>
Source2 = Observable<Observable<>>

для кода Refernce LinqPad

var interval = Observable.Interval(TimeSpan.FromSeconds(0.5)).Take(20);

var interval2 = Observable.Interval(TimeSpan.FromSeconds(2)).Take(5);

var interval3 = interval.Window(interval2);

var interval4 = interval3.Select(x => x.GroupBy(y => y%2==0));

var interval6 = interval4.Select(z => z.SelectMany(h => h.GroupBy(j => j%3==0).Select(o => new {OuterKey = h.Key, InnerKey = o.Key, Seq = o.Select(b => b).ToList()})));

var interval7 = interval6.Select(x => x.SelectMany(y => y.Seq.Select(z => new {OuterKey = y.OuterKey, InnerKey = y.InnerKey,List = z})));

var interval5 = Observable.Zip(interval7,interval2,(a,b) => new {A = a, B = b});

Теперь мне нужно сжать первое окно промежутка 7 с первым элементом промежутка 2, однакорезультат для interval7 пуста.Мне нужен такой результат

Ожидаемый результат

TRUE TRUE List 0

TRUE FALSE List 0

FALSE FALSE List 0

FALSE TRUE List 1 

Фактический результат

Observable 0

Observable 1

Observable 2
...