Cześć, chciałbym zapytać o wskazówke/poradę w jaki sposób najlepiej wydzielić kod, żeby nie powtarzać copy pasta w tych metodach, które obecnie różnią się jedynie nazwą i rozszerzeniem LogLevel?
{
public static class LoggerExtensions
{
public static void LogError(this ILogger logger, Exception exception, string message, IHandlerContext<IBasicMessage> ctx)
{
logger.Log(LogLevel.Error, exception, $"{message}. Message: {message}", JsonConvert.SerializeObject(ctx.Message));
}
public static void LogWarning(this ILogger logger, Exception exception, string message, IHandlerContext<IBasicMessage> ctx)
{
logger.Log(LogLevel.Warning, exception, $"{message}. Message: {message}", JsonConvert.SerializeObject(ctx.Message));
}
public static void LogInfo(this ILogger logger, Exception exception, string message, IHandlerContext<IBasicMessage> ctx)
{
logger.Log(LogLevel.Information, exception, $"{message}. Message: {message}", JsonConvert.SerializeObject(ctx.Message));
}
}
}