2
我正在嘗試使用Polly來處理由我的WebRequest
拋出的異常。使用Polly C#庫來處理異常的正確方法
這是我的實現。
var generalExceptionPolicy=Policy.Handle<Exception>().WaitAndRetry(2, retryAttempt =>
TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)),(exception,timespan)=>{
if(attempt++ == 2)
{
Toast.MakeText(Activity,"No Connection Bro",ToastLength.Short).Show();
}
});
var test = await generalExceptionPolicy.ExecuteAsync(()=>PostPreLogin (view.FindViewById<EditText> (Resource.Id.mobileTextBox).Text));
我得到了重試的工作。但是我想知道的是在最後一次嘗試之後我會在哪裏得到回調?我正在策略定義部分獲取回調,其中我試圖顯示Toast
消息。但那只是在審判之間。我最後一次審判後沒有收到。
此外,我的用戶界面在最後一次試用後死機。由於Exception
,可能因爲ExecuteAsync
Task
未完成。如果是這樣,那麼使用Polly庫的正確方法是什麼?
這是我試圖用波利
public async Task<string> PostPreLogin(string userName)
{
var preloginvalue = await Account.PreLoginPost (userName);
return preloginvalue;
}