protected EventData SerializeEvent(IEvent <TAggregateKey> @event, int commitNumber)
        {
            var header = new EventStoreMetaDataHeader()
            {
                ClrType      = GetClrTypeName(@event),
                CommitNumber = commitNumber
            };

            return(new EventData(Guid.NewGuid(), @event.GetType().Name, true, _serializer.Serialize(@event), _serializer.Serialize(header)));
        }
        protected EventData SerializeSnapshotEvent <TSnapshot>(TSnapshot snapshot, int commitNumber)
            where TSnapshot : ISnapshot <TAggregateKey>
        {
            var header = new EventStoreMetaDataHeader()
            {
                ClrType      = GetClrTypeName(snapshot),
                CommitNumber = commitNumber
            };

            return(new EventData(Guid.NewGuid(), snapshot.GetType().Name, true, _serializer.Serialize(snapshot), _serializer.Serialize(header)));
        }