public IEnumerable <KeyValuePair <string, string> > Provide <TAggregate>(TAggregate aggregate, IDomainEvent @event, IMetadata metadata) where TAggregate : IAggregate { string eventName; if ([email protected](out eventName)) { eventName = @event.GetType().Name; } yield return(new KeyValuePair <string, string>(MetadataKeys.EventClrType, @event.GetType().AssemblyQualifiedName)); yield return(new KeyValuePair <string, string>(MetadataKeys.EventName, eventName)); }