Не найден подходящий конструктор типаC#

Место общения программистов C#
Anonymous
Не найден подходящий конструктор типа

Сообщение Anonymous »

Я пробую самый простой вариант использования IHttpClientFactory

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

public interface IWeatherForecast
{
Task Get();
}

class WeatherForecast : IWeatherForecast
{
private readonly HttpClient httpClient;
public WeatherForecast (IHttpClientFactory httpClientFactory)
{
httpClient = httpClientFactory.CreateClient();
}
public async Task Get()
{
var resp = await httpClient.GetAsync("https://testwebapiforuseinsamples.azurewebsites.net/weatherforecast");
return JsonConvert.SerializeObject(resp.Content.ReadAsStringAsync());
}
}
а затем создайте его экземпляр

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

static async Task Main(string[] args)
{
var container = new ServiceCollection();
container.AddHttpClient();
var serviceProvider = container.BuildServiceProvider();
var resp = await serviceProvider.GetRequiredService().Get();
}
Однако, когда я запускаю его, он выдает

System.InvalidOperationException: 'Не удалось найти подходящий конструктор для типа 'HttpClientFactoryExample.WeatherForecast'. Убедитесь, что тип конкретен...

Может кто-нибудь указать, что не так с этим кодом. Я ожидал, что после добавления сервиса WeatherForecast в DI я смогу получить его инициализированный экземпляр из контейнера.

Подробнее здесь: https://stackoverflow.com/questions/703 ... be-located

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