Я пытаюсь уточнить фильтр в своем Обозревателе с течением времени, и мне было интересно, как они лучше всего это делают.
Например, myObservable.Where(x=>x.Color=="red").Subscribe();
, а затем myObservable.Where(x=>x.Color=="blue").Subscribe();
, а затем объединить два в один поток, так что OnNext()
вызывается для наблюдаемых Красных ИЛИ Синих.
Возможно, он не полностью нажал на то, что происходит для меня.
Что если у меня тоже есть myObservable.Where(x=>x.Type=="Car").Subscribe();
.Он будет продолжать вызывать один и тот же метод OnNext () каждый раз?Какая польза от этого для меня ... Я мог бы хотеть реагировать по-разному в зависимости от того, какая подписка вызывает обновление, но в то же время я мог бы хотеть сгладить подписки.
Например, в приведенном выше сценарии, если цветкрасный, я хочу написать «новый красный объект», и если это автомобиль, я хочу написать «новый автомобиль».Как бы я сделал это в Rx?Существует перегрузка для подписки на OnNext, OnError и т. Д., Но для этого требуется, чтобы Наблюдатель тоже был наблюдаемым (Тема) ... исправьте меня, если я ошибаюсь.
Это не имеет смысла для меня.... почему то, что наблюдает за изменениями, также должно быть наблюдаемым?