public static ReadonlyEvent Parse(string message, IServiceProvider service) { var separator = message.IndexOf('|'); if (separator == -1) { throw new TodoException("Handle this erronenous input"); } var header = message.Substring(0, separator); var tail = message.Substring(separator + 1); return(Parse(EventHeader.FromString(header), tail, service)); }