Как написать пользовательскую цель NLog, которая может искать значение из appsettings.json

#.net-core #nlog

#.net-core #nlog

Вопрос:

Я хочу получить хост и токен из appsettings.json в nlog.config . Я следил за этой статьей, но я не могу получить правильное значение в appsettings.json .

Это моя пользовательская цель NLog:

[Мой целевой код NLog

Это мой пользовательский NLog.config :

[Мой Nlog.config

Это мой пользовательский appsettings.json :

[Мои Appsettings.json

Кто-нибудь, пожалуйста, помогите мне проверить, почему я не могу оценить.

Ответ №1:

Никогда не понимал, что такое совместное использование кода с использованием скриншотов, но в любом случае вам нужно изменить свои свойства с типа string на Layout вот так:

 public Layout Host { get; set; }
  

Затем вы выводите вывод следующим образом:

 protected override void Write(LogEventInfo logEvent)
{
    var host = RenderLogEvent(this.Host, logEvent);

    // blah blah
}
  

Обновили вики:https://github.com/NLog/NLog/wiki/How-to-write-a-custom-target