private AccountDomainEvent ConvertEventDataToAccountDomainEvent(ResolvedEvent resolvedEvent) { var metadataString = Encoding.UTF8.GetString(resolvedEvent.Event.Metadata); var metadata = JsonConvert.DeserializeObject <DomainMetadata>(metadataString, _jsonSerializerSettings); if (metadata?.Schema == AccountSchema.SchemaName) { var eventType = _readSchema.GetDomainEventType(resolvedEvent.Event.EventType); if (eventType == null) { return(null); } var eventString = Encoding.UTF8.GetString(resolvedEvent.Event.Data); var accountEvent = (AccountDomainEvent)JsonConvert.DeserializeObject(eventString, eventType, _jsonSerializerSettings); accountEvent.StreamId = metadata.StreamId; accountEvent.Version = metadata.Version; return(accountEvent); } return(null); }
private static AccountDomainEvent ConvertEventDataToAccountDomainEvent(ResolvedEvent resolvedEvent) { var metadataString = Encoding.UTF8.GetString(resolvedEvent.Event.Metadata); var eventString = Encoding.UTF8.GetString(resolvedEvent.Event.Data); //var metadata = new DomainMetaDataWrapper(metadataString); var metadata = JsonConvert.DeserializeObject <DomainMetadata>(metadataString, _jsonSerializerSettings); var eventType = _readSchema.GetDomainEventType(resolvedEvent.Event.EventType); var domainEvent = (IDomainEvent)JsonConvert.DeserializeObject(eventString, eventType, _jsonSerializerSettings); domainEvent.StreamId = metadata.StreamId; domainEvent.Version = metadata.Version; return((AccountDomainEvent)domainEvent); }