Skip to content

Instantly share code, notes, and snippets.

@belczyk
Created February 24, 2014 20:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save belczyk/9196257 to your computer and use it in GitHub Desktop.
Save belczyk/9196257 to your computer and use it in GitHub Desktop.
private static EventData ToEventData(Guid eventId, object @event, IDictionary<string, object> headers = null)
{
if (headers == null) headers = new Dictionary<string, object>();
var serializerSettings = new JsonSerializerSettings { TypeNameHandling = TypeNameHandling.None };
var data = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(@event, serializerSettings));
var eventHeaders = new Dictionary<string, object>(headers)
{
{
"EventClrTypeName", @event.GetType().AssemblyQualifiedName
}
};
var metadata = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(eventHeaders, serializerSettings));
var typeName = @event.GetType().Name;
return new EventData(eventId, typeName, true, data, metadata);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment