Если у ваших коллег нет проблем, то вы, скорее всего, стали жертвой нелепой медленной загрузки символов в Visual Studio 2019. Один из способов - Включить только мой код
Вы можете попробовать и пропустить автоматическое сканирование c для сборок для загрузки расширений NLog:
public Startup(IConfiguration configuration, IHostingEnvironment env)
{
Configuration = configuration;
//disable NLog assembly scanning
NLog.Config.ConfigurationItemFactory.Default = new NLog.Config.ConfigurationItemFactory(typeof(NLog.ILogger).GetTypeInfo().Assembly);
//here's where it hangs
NLog.LogManager.LoadConfiguration(System.String.Concat(Directory.GetCurrentDirectory(), "/nlog.config"));
...
}
Также рекомендуется использовать NLog 4.6.8, так как он имеет несколько оптимизаций для ускорения загрузка конфигурации.
Обратите внимание, что если вы включили NLog InternalLogger на уровне трассировки, это также снизит производительность.
Помните, что если вы отключите MEL-Console-Logger по умолчанию, или отфильтровывает сообщения Info-Level от Microsoft.Hosting.Lifetime
-Logger, после чего среда хостинга будет ожидать время ожидания ожидаемых сообщений при запуске. Обязательно настройте вывод NLog-Console или сохраните вывод AddConsole:
https://github.com/NLog/NLog.Web/wiki/Hosting-Lifetime-Startup-Messages
In ASP. NET Core 2, тогда он будет пишите напрямую в консоль, но с ASP. NET Core 3, затем он использует MEL-ILogger с именем Microsoft.Hosting.Lifetime
(не забудьте настроить MEL-Filter и NLog-Filter, чтобы не отбрасывать эти сообщения в ASP. NET Core 3)