Используйте Task.WhenAll в уже работающем методе.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Используйте Task.WhenAll в уже работающем методе.

Сообщение Anonymous »

У меня есть метод, который запускает другой частный метод в foreach
Вот основной метод

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

 public async Task GetIssuesAsync(string query, string email)
{
var fields =
$@"key,summary,description,status,issuetype,updated,created,attachment,assignee,reporter,
{IssueFields.RequestType}, {IssueFields.ApproversField},
{IssueFields.MinimumNotificationsReportersField}, {IssueFields.MinimumNotificationsUsersField},
{IssueFields.StandardNotificationsReportersField}, {IssueFields.StandardNotificationsUsersField}, {IssueFields.StandardNotificationsAssigneeField},
{IssueFields.FullNotificationsReportersField}, {IssueFields.FullNotificationsUsersField}, {IssueFields.FullNotificationsAssigneeField}";

var expand = "renderedFields";

var queryParams = new Dictionary
{
{ "jql", query },
{ "maxResults", "100" },
{ "validateQuery", "false" },
{ "fields", fields },
{ "expand", expand }
};

var request = this.ConfigureGetRequest("search", queryParams: queryParams);

var result = await this.SendRequestAsync(request);

var issues = result.IssueList;

foreach (var item in issues)
{
item.Fields.Attachment = await GetAttachments(item.Key, email);
}

return issues;
}
Как вы видите в foreach, у меня есть вызов другого метода
Вот его код

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

 private async Task GetAttachments(string issueKey, string email)
{
var attachmentRequest = this.ConfigureGetRequest(issueKey, this.settings.GetAttachmentsPathUrl).AddXClientHeader(email);;

return await this.SendRequestAsync(
attachmentRequest,
new List { HttpStatusCode.OK });
}
Как использовать Task.WhenAll для параллельного получения вложений?

Подробнее здесь: https://stackoverflow.com/questions/784 ... ing-method
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему вызов неоднозначен между Task.Run(Func) и Task.Run(Func) при передаче имени метода
    Anonymous » » в форуме C#
    0 Ответы
    101 Просмотры
    Последнее сообщение Anonymous
  • Лучший способ распараллелить задачи .NET с помощью Task.WhenAll
    Anonymous » » в форуме C#
    0 Ответы
    49 Просмотры
    Последнее сообщение Anonymous
  • Task.WhenAll против Parallel.ForEachAsync – какой подход лучше и почему?
    Anonymous » » в форуме C#
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • AggregateException из Task.WhenAll содержит только первое исключение при ожидании
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Почему я должен предпочесть одно ожидание Task.WhenAll нескольким ожиданиям?
    Anonymous » » в форуме C#
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous

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