private static async Task Execute() { var connectionFactory = new EventStoreConnectionFactory("ConnectTo=tcp://127.0.0.1:1113;"); var bus = new EventStoreBus(connectionFactory); var canUnsubscribe = bus.RegisterHandler(new EventSubscriptionRequest <Event>(OnEventReceived, "$ce-hello", lastProcessedEventStreamPosition: null)); var eventStore = new EventStore(connectionFactory, null); var streamName = StreamNameBuilder.BuildStreamName <Hello>(Guid.NewGuid()); await eventStore.CreateNewStream(streamName, new Event[] { new HelloEvent(), }); bool keepContinue = true; while (keepContinue) { switch (Console.ReadKey().Key) { case ConsoleKey.RightArrow: var lastExpectedEventVersion = eventStore.GetStreamLastExpectedEventVersion(streamName); await eventStore.AppendEventsToStream(streamName, new[] { new HelloEvent(), }, lastExpectedEventVersion); break; case ConsoleKey.LeftArrow: keepContinue = false; break; } } }
private static async Task Execute() { var connectionFactory = new EventStoreConnectionFactory("ConnectTo=tcp://127.0.0.1:1113;"); var eventStore = new EventStore(connectionFactory, null); var streamName = StreamNameBuilder.BuildStreamName <Hello>(Guid.NewGuid()); await eventStore.CreateNewStream(streamName, new Event[] { new HelloEvent() }); bool keepContinue = true; while (keepContinue) { switch (Console.ReadKey().Key) { case ConsoleKey.RightArrow: var lastExpectedEventVersion = eventStore.GetStreamLastExpectedEventVersion(streamName); await eventStore.AppendEventsToStream(streamName, new[] { new HelloEvent() }, lastExpectedEventVersion); break; case ConsoleKey.LeftArrow: keepContinue = false; break; } } }
public void when_append_and_read_event() { var eventStore = new EventStore(_messageStore); var testEvent1 = new TestEvent("Event1"); var testEvent2 = new TestEvent("Event2"); eventStore.AppendEventsToStream(null, -1, new[] { testEvent1 }); eventStore.AppendEventsToStream(null, -1, new[] { testEvent2 }); eventStore.AppendEventsToStream(null, -1, new[] { testEvent1, testEvent2 }); var stream = eventStore.LoadEventStream(null); Assert.AreEqual(3, stream.StreamVersion); Assert.AreEqual(4, stream.Events.Count); Assert.AreEqual("Event1", (stream.Events[0] as TestEvent).Name); Assert.AreEqual("Event2", (stream.Events[1] as TestEvent).Name); Assert.AreEqual("Event1", (stream.Events[2] as TestEvent).Name); Assert.AreEqual("Event2", (stream.Events[3] as TestEvent).Name); }