Я разрабатываю API, в этом API у меня есть служба с методом, и этот метод должен вызывать три метода в разных репозиториях. У каждого из этих методов есть запрос Https, у вызова есть ответ, и я хочу получить информацию из этого ответа.
Теперь мы ждем каждого из этих звонков, и производительность ужасна.
Как я могу сделать эти три вызова одновременно? Я знаю, используя параллель, но я не знаю, как.
Услуги:
public async Task<object> GetTenantSettings(string source, string tenantId)
{
var tenantSettings = await _repository1.GetTenant(tenantId);
var accountCount = await _repository2.GetAccount(tenantId);
var userCount = await _repository3.GetUsers(source, int.Parse(tenantId));
var TenantSettingsModel = MapTenant(accountCount, userCount, tenantSettings); // To map, out of scope of the problem
return TenantSettingsModel;
}
Интерфейс репозитория, я показываю один, но у всех одна и та же идея.
Task<int> GetAccount(string tenantId);
Теперь мы вызываем один метод, а после других, как я могу вызвать его одновременно и получить информацию?