public static IDomainEvent ToDomainEvent(this RecordedEvent recordedEvent) { var serializedEventString = Encoding.UTF8.GetString(recordedEvent.Data); var eventMetaData = EventMetaData.EventMetaDataFrom(recordedEvent); return(serializedEventString.ToDomainEventUsing(eventMetaData)); }
public static IDomainEvent ToDomainEventUsing( this string serializedDomainEventData, EventMetaData eventMetaData) { try { return((IDomainEvent)JsonConvert .DeserializeObject( serializedDomainEventData, Type.GetType(eventMetaData.FullEventType))); } catch (Exception ex) { throw new EventDeserializationException(serializedDomainEventData, ex); } }
public static IDomainEvent ToDomainEvent(this RecordedEvent recordedEvent) { var serializedEventString = Encoding.UTF8.GetString(recordedEvent.Data); var eventMetaData = EventMetaData.EventMetaDataFrom(recordedEvent); try { return((IDomainEvent)JsonConvert .DeserializeObject( serializedEventString, Type.GetType(eventMetaData.FullEventType))); } catch (Exception ex) { throw new EventDeserializationException( recordedEvent.EventType, serializedEventString, recordedEvent.EventNumber, ex); } }