Код: Выделить всё
https:///api/GetAppData?name=appname&getUsers=true&getversion=2.3
Однако, чтобы получить дополнительную информацию, мне нужно сделать еще два вызова (я знаю, что это плохо, но мы ограничены существующей инфраструктурой.)
Итак, я пытаюсь выполнить параллельную выборку к targetAPI с помощью приведенного ниже кода.
Код: Выделить всё
Task appDataTask= myClient.GetAppDataAsync(identifierId, identifierName, version, token);
Task getUsers= (users.HasValue && users.Value) ?
FetchUsers(titleId: appId, token: token) : null;
Task VersionTask= (version.HasValue && version.Value) ?
FetchVersionApp(titleId: TitleId, token: token) : null;
await Task.WhenAll(appDataTask, getUsers, VersionTask);
AppData app = appDataTask.Result;
AppResponse response = app.ConvertData();
if (getUsers != null) // this means users is requested.
{
DeployedUsers users= getUsers?.Result;
response.Users= users;
}
if (mos3AppAvailableToTask != null) // this means AvailableTo is requested.
{
VersionedApp versionedApp= VersionTask?.Result;
response.version= versionedApp;
}
Как я могу это сделать лучше? дождитесь результатов задач и вернитесь.
Подробнее здесь: https://stackoverflow.com/questions/786 ... uery-param
Мобильная версия