Пример #1
0
        /// <summary>
        /// Apply the NoteTitleChanged. Apply() is of IEventHandler(of NoteTitleChangedEvent)
        /// </summary>
        /// <param name="event">Event to apply</param>
        public void Apply(NoteTitleChangedEvent @event)
        {
            //Important: State change done here
            //Pattern: Apply the generic event details first
            ApplyGenericEvent(@event, false);

            // Then apply specific event details
            this.Title = @event.title;
        }
Пример #2
0
        public async Task HandleEventAsync(NoteTitleChangedEvent @event)
        {
            LogEvent(@event);

            var note = _repository.GetNote(@event.AggregateId);

            note.CurrentVersion = @event.TargetVersion + 1;
            note.Title          = @event.Title;

            _repository.SaveNote(note);
        }
Пример #3
0
 public Task <AsyncTaskResult> HandleAsync(NoteTitleChangedEvent evnt)
 {
     return(TryUpdateRecordAsync(connection => connection.UpdateAsync(new
     {
         Title = evnt.Title,
         UpdatedOn = evnt.Timestamp,
         Version = evnt.Version,
         EventSequence = evnt.Sequence
     }, new
     {
         Id = evnt.AggregateRootId,
         Version = evnt.Version - 1
     }, ConfigSettings.NoteTable)));
 }
Пример #4
0
 public void OnTitleChanged(NoteTitleChangedEvent @event)
 {
     Title = @event.Title;
 }