/// <summary> /// Converts the <see cref="NLogEvent" /> to <see cref="LogEventInfo" />. /// </summary> /// <param name="context"> /// The <see cref="NLogEvent" /> object this <see cref="NLogEvent" /> is part of.. /// </param> /// <param name="loggerNamePrefix">The logger name prefix to prepend in front of the logger name.</param> /// <returns> /// Converted <see cref="LogEventInfo" />. /// </returns> internal LogEventInfo ToEventInfo(NLogEvents context, string loggerNamePrefix) { var result = new LogEventInfo(LogLevel.FromOrdinal(LevelOrdinal), loggerNamePrefix + context.Strings[LoggerOrdinal], context.Strings[MessageOrdinal]); result.TimeStamp = new DateTime(context.BaseTimeUtc + TimeDelta, DateTimeKind.Utc).ToLocalTime(); for (var i = 0; i < context.LayoutNames.Count; ++i) { var layoutName = context.LayoutNames[i]; var layoutValue = context.Strings[ValueIndexes[i]]; result.Properties[layoutName] = layoutValue; } return result; }