コード例 #1
0
        public void Handle(StartTransfer c)
        {
            var aggregate = new TransferAggregate {
                AggregateIdentifier = c.AggregateIdentifier
            };

            aggregate.StartTransfer(c.FromAccount, c.ToAccount, c.Amount);
            Commit(aggregate);
        }
コード例 #2
0
        private void Commit(TransferAggregate aggregate)
        {
            var changes = _repository.Save(aggregate);

            foreach (var change in changes)
            {
                _publisher.Publish(change);
            }
        }