У меня есть проект, в котором используется NLog.Поэтому у меня уже есть методы отладки / предупреждения, написанные в моем существующем проекте.
Теперь расширяем проект.В новом проекте я хочу использовать Microsoft.Extensions.Logging.ILogger
.
Вместо того, чтобы писать с нуля, я пытаюсь использовать существующий код.что-то вроде:
public void Log<TState>(Microsoft.Extensions.Logging.LogLevel logLevel, EventId eventId, LogInfo logInfo, Exception exception, Func<TState, Exception, string> formatter)
{
NLog.ILogger logger = null;
if (logLevel == Microsoft.Extensions.Logging.LogLevel.Debug)
{
logger.Debug(logInfo, logLevel );
}
}
Класс LogInfo
- это пользовательский класс.Я не могу сделать так, потому что метод определяется как
public void Log<TState>(Microsoft.Extensions.Logging.LogLevel logLevel, EventId eventId, TState logInfo, Exception exception, Func<TState, Exception, string> formatter)
Теперь, как можно передать logInfo
в метод?Любая хорошая документация по Tstate
также будет оценена.