3
我正在使用一個搜索框,我將加載一個名稱列表。如何在Windows 8.1中使用SearchBox時優雅地處理TaskCancelledException
我的代碼背後
private async void SearchBox_SuggestionsRequested(SearchBox sender, SearchBoxSuggestionsRequestedEventArgs args)
{
if (string.IsNullOrEmpty(args.QueryText))
{
return;
}
var collection = args.Request.SearchSuggestionCollection;
if(oldquery != args.QueryText && args.Request.IsCanceled == false)
{
var deferral = args.Request.GetDeferral();
try
{
oldquery = args.QueryText;
var listOfBanks = await addFIPageViewModel.GetBanksOnQuery();
foreach (Institution eachBank in listOfBanks)
{
collection.AppendQuerySuggestion(eachBank.Name);
}
}
//JUST Logging and ignoring. Can I handle it in a better way
catch(Exception e)
{
Debug.WriteLine(e.StackTrace);
}
finally
{
deferral.Complete();
}
}
}
類型的異常 'System.Threading.Tasks.TaskCanceledException' 任務被取消。發生在線
var listOfBanks = await addFIPageViewModel.GetBanksOnQuery();
我只是無視,如你所見。
有沒有更好的方法來處理這個問題?
我無法確定此問題的根本原因。如果這是在SearchSuggestionRequested中調用異步方法的正確方法,是否有人可以引導。