Попытка запроса данных с Web-сервиса с помощью вызова Async.Loop - с событием Async
Начато аналогичное сообщение Wait until event has finished, в этом случае я смог использовать метод None-Async. Сейчас это не так. Нет метода None-Async, доступного с текущим веб-сервисом. Итак, как бы я пошел в голову и определить, закончилось ли событие из события «RespService_Send_Completed», прежде чем инициировать/перейти к следующей строке в цикле. Если событие успешное, возвращение из web-сервиса является UUID в «e.Result».
foreach (string id in uuid)
{
WebRef.ResponderService RespService = new WebRef.ResponderService();
_uuid = id;
RespService.SendDataAsync(id);
RespService.SendCompleted += RespService_Send_Completed;
}
код отлично работает при вызове метода
public void InvokeSend(string[] uuid)
с одним значением в строке [] UUID. Но когда массив содержит более одного кода, код будет терпеть неудачу.
public class SendReciveSoapData
{
private string _uuid { get; set; }
public void InvokeSend(string[] uuid)
{
foreach (string id in uuid)
{
WebRef.ResponderService RespService = new WebRef.ResponderService();
_uuid =id;
RespService.SendDataAsync(id);
RespService.SendCompleted += RespService_Send_Completed;
}
}
void RespService_Send_Completed(object sender, WebRef.CompletedEventArgs e)
{
//Saving Response Data to database
string SuccessID = e.Result;
string TransactionID = _uuid;
DataBase db = new DataBase();
db.UpdateResponseID(SuccessID, TransactionID);
}
}