EventData Type

Just noticed in the .NET client API the documentation for EventData Type says

The name of the event type. It is strongly recommended that these use lowerCamelCase if projections are to be used.

Is there any specific reason for lowerCamelCase or is that only the case if we project to a stream name that begins with the event type?

1 Like

projections in javascript ... they match on event type.

So it’s for convention purposes and not performance?

Yes.

Aha, interesting.
So this means that if I just change this part:

var typeName = evnt.GetType().Name;
return new EventData(eventId, typeName, true, data, metadata);

``

to
var typeName = char.ToLower(evnt.GetType().Name[0]) + evnt.GetType().Name.Substring(1)
return new EventData(eventId, typeName, true, data, metadata);

``

then I’ll be good to go for projections?

You want a type name like myTypeName (e.g. first is lowercase) this is
mostly because this is idiomatic in Javascript. You can make it
MyTypeName if you prefer it just a matter of what you match to in
Javascript

okay, then I get it. it’s just to not confuse the guy writing the projections :slight_smile: writing javascript we’d expect camelcasing, so better let the events names be camelcased.