guneysus
5/10/2017 - 12:47 PM

Rx notlarim

Rx notlarim

            int total = 0;

            var source = Observable
                           .Generate (
                                0, 
                                condition => true, 
                                iterate => {
                                    //iterate += 1;
                                    //initial += iterate;
                                    total += iterate;
                                    return total;
                                },
                                resultSelector => resultSelector,
                                timeSelector => TimeSpan.FromSeconds (1))
                           .Timestamp ( );

            var obsvr = Observer.Create<Timestamped<int>> (
                x => Console.WriteLine ("OnNext: {0} {1}", x.Timestamp, x.Value),
                ex => Console.WriteLine ("OnError: {0}", ex.Message),
                ( ) => Console.WriteLine ("OnCompleted"));

            IDisposable subscription = source.Subscribe (obsvr);
            Console.WriteLine ("Press ENTER to unsubscribe...");
            Console.ReadLine ( );

            subscription.Dispose ( );
            return;
        public IObservable<System.Reactive.Timestamped<IEnumerable<object>>> Observable
        {
            get
            {
                IObservable<System.Reactive.Timestamped<IEnumerable<object>>> source = System.Reactive.Linq.Observable
                   .Generate (
                        0,
                        condition => true,
                        iterate => iterate,
                        resultSelector =>
                        {
                            var query = @"SELECT * FROM <TABLE>;";
                            return this.Connection.Query<object> (query);
                        },
                        timeSelector => TimeSpan.FromSeconds (1))
                   .Timestamp ( );

                return source;
            }
        }