Esempio n. 1
0
        static async Task ProcessLastEvents(IEventStoreConnection connection, AccountDbContext context)
        {
            var isEndOfStream          = false;
            var lastProcessEventNumber = 0;
            var batchSize = 2;

            while (!isEndOfStream)
            {
                var oldEvents = await connection.ReadStreamEventsForwardAsync(
                    StreamName,
                    lastProcessEventNumber,
                    batchSize,
                    true,
                    EventStoreHelpers.GetCredentials());

                await UpdateState(oldEvents, context);

                lastProcessEventNumber += batchSize;

                isEndOfStream = oldEvents.IsEndOfStream;
            }
        }
Esempio n. 2
0
        static async Task Main(string[] args)
        {
            using var connection = await EventStoreHelpers.CreateConnection();

            var stream = "my-first-stream";

            await connection.SubscribeToStream(stream, ProcessEvent);

            Console.WriteLine("processing events");
            Console.ReadLine();
            var pm    = EventStoreHelpers.CreateProjectionsManager();
            var creds = EventStoreHelpers.GetCredentials();

            var projection  = "money-for-accounts";
            var partitionId = "account-e3f62a80-a504-4cfb-97f1-b9a003535da8";
            var result      = await pm.GetPartitionResultAsync(projection, partitionId, creds);

            Console.WriteLine(result);

            // projection create from file sample
            //var fileStr = await File.ReadAllTextAsync("test.js");
            //await pm.CreateContinuousAsync("test", fileStr);
        }