Почему в веб-api нет DI для Ilogger?

#c# #asp.net-core #dependency-injection

#c# #asp.net-core #внедрение зависимостей

Вопрос:

Я хочу знать (хочу знать), почему мы можем использовать ILogger в контроллере без добавления для него инъекции зависимостей (DI) ConfigureService ?

     [ApiController]
    [Route("[controller]")]
    public class WeatherForecastController : ControllerBase
    {    
        private readonly ILogger<WeatherForecastController> _logger;

        public WeatherForecastController(ILogger<WeatherForecastController> logger,
 

Надеюсь, мой вопрос понятен.

Комментарии:

1. Потому что ASP.NET Core добавляет его для вас автоматически.

2. Существует метод расширения AddLogging, который настраивает систему ведения журнала с помощью встроенной системы конфигурации (и регистров ILogger<T> ). В некоторых конфигурациях этот метод вызывается фреймворком автоматически.

Ответ №1:

пожалуйста, добавьте ниже в начальный файл:

 private void CreateServiceProvider()
{
    services.AddLogging();//<--HERE
}