RestClient как синглтонC#

Место общения программистов C#
Anonymous
RestClient как синглтон

Сообщение Anonymous »

Документация RestSharp содержит следующий раздел:

Жизненный цикл RestClient
Не создавайте экземпляр RestClient для каждого HTTP-вызова.
RestSharp создает внутри себя новый экземпляр HttpClient, и вы
получите множество зависающих соединений и в конечном итоге исчерпаете
пул соединений.
Если вы используете контейнер внедрения зависимостей, зарегистрируйте свой API-клиент
как синглтон.

Не могли бы вы подтвердить правильность приведенного ниже кода (.NET 8)?
Реализация интерфейса IRestClient RestClient зарегистрирована как Singleton (например, AddScoped и AddTransient не разрешены).

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

services.AddSingleton(options =>
{
var env = options.GetRequiredService();
var url = env.GetValue(Constants.MY_URL)!;

var restClientOptions = new RestClientOptions(url)
{
UseDefaultCredentials = true
};
return new RestClient(restClientOptions);
}
Другие классы обслуживания используют IRestClient (через DI).

Подробнее здесь: https://stackoverflow.com/questions/787 ... -singleton

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