NLog из настроек приложений с пользовательскими настройками приложенийC#

Место общения программистов C#
Ответить
Anonymous
 NLog из настроек приложений с пользовательскими настройками приложений

Сообщение Anonymous »

У меня есть собственный JSON-файл настроек приложения, который нужно добавить в конфигурацию. Я делаю это с помощью перехватчика ConfigureAppConfiguration, вызываемого из CreateHostBuilder, вызываемого из Main в Program.cs. Я также использую NLog.

Код: Выделить всё

public static void Main(string[] args)
{
//
// currently using nlog.config but I want to use appsettings but they haven't been "built" yet
var logger = NLog.Web.NLogBuilder.ConfigureNLog("nlog.config").GetCurrentClassLogger();
try
{
logger.Debug("init main");
CreateHostBuilder(args).Build().Run();
// could move configurenlog call here, but already called "UseNLog()"
}
catch (Exception exception)
{
logger.Error(exception, "Stopped program because of exception");
throw;
}
finally
{
NLog.LogManager.Shutdown();
}
}
public static IHostBuilder CreateHostBuilder(string[] args) =>
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostingContext, config) => {
// add custom config file
config
.AddJsonFile("customsettings.json", optional:true, reloadOnChange:true);
})
.ConfigureWebHostDefaults(webBuilder =>
{
webBuilder.UseStartup();
})
.ConfigureLogging(logging =>
{
logging.ClearProviders();
logging.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
})
.UseNLog();  // NLog: Setup NLog for Dependency injection
Теперь я хочу использовать (комбинированные) настройки приложения для настройки nlog, как описано здесь, но как мне это сделать ПОСЛЕ того, как я загрузил свои собственные настройки конфигурации?

Подробнее здесь: https://stackoverflow.com/questions/652 ... ppsettings
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»