Не найден подходящий конструктор типа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
Ответить

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

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

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

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

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