ฉันเพิ่งเริ่มเรียนรู้รูปแบบ TAP และฉันได้รับข้อผิดพลาด
An asynchronous module or handler completed while an asynchronous operation was still pending
ฉันได้รับข้อผิดพลาดนี้ในบรรทัด:
var r = await _purchaseService.UpdateEbookDownloadLinkAsync(resultOfAdding.Id, ebookUrls);
นี่คือลักษณะของวิธีการ UpdateEbookDownloadLinkAsync:
public async Task<bool> UpdateEbookDownloadLinkAsync(Guid purchaseId, List<string> urls)
{
using (var database = new DatabaseContext())
{
var item = await database.PurchasedItems.FindAsync(purchaseId);
if (item == null)
{
return false;
}
var stringBuilder = new StringBuilder();
foreach (var url in urls)
{
stringBuilder.Append(url).Append(';');
}
item.EbookDownloadLink = stringBuilder.ToString();
database.PurchasedItems.AddOrUpdate(item);
var i = await database.SaveChangesAsync();
return true;
}
และก่อนที่ฉันจะเรียก UpdateEbookDownloadLinkAsync ฉันมี ForEach loop ซึ่งลงท้ายด้วยโค้ดชิ้นนี้:
var blob = container.GetBlockBlobReference(nameWithoutExstension + "-" + guid + ".pdf");
await blob.UploadFromFileAsync(mappedPathOut, FileMode.Open);
ebookUrls.Add(blob.Uri.ToString());
คุณช่วยฉันแก้ปัญหานี้ได้ไหม
UpdateEbookDownloadLinkAsync
(และรหัสนั้นไม่อยู่ในโพสต์) - person Alexei Levenkov   schedule 14.10.2015UpdateEbookDownloadLinkAsync
มันถูกประกาศเช่นนี้:public async void Pay()
แต่เมื่อฉันเปลี่ยนเป็น:public async Task<bool> Pay()
มันใช้งานได้ - person hyperN   schedule 14.10.2015