public async Task<int> Add(HttpContext context, int a, int b) { context.WriteHeader("Add-before-await"); context.WriteHeader("---------------------------------------------------------"); int c = await AddSync(a, b); context.WriteHeader("Add-after-await-return"); return c + 99; }
public async Task<PageResult> GetWebsiteTitles(HttpContext context, string urls) { context.WriteHeader("action-before-await"); context.WriteHeader("---------------------------------------------------------"); TestTaskPageViewData viewData = new TestTaskPageViewData(); viewData.Input = urls; if( string.IsNullOrEmpty(urls) ) { viewData.Input = @" http://cn.bing.com/ http://email.163.com/ http://www.aliyun.com/ http://baike.baidu.com/ http://www.dingtalk.com/ http://www.taobao.com/ http://www.tmall.com/"; } else { string[] urlArray = urls.SplitTrim('\r', '\n'); List<KeyValuePair<string, string>> list = new List<KeyValuePair<string, string>>(urlArray.Length); foreach( string url in urlArray ) { try { HttpOption option = new HttpOption { Url = url, Timeout = 2000 }; string text = await HttpClient.SendAsync<string>(option); context.WriteHeader("HttpClient.SendAsync<string>(url)--after-await"); string title = GetHtmlTitle(text) ?? "-----------------"; list.Add(new KeyValuePair<string, string>(url, title)); } catch( Exception ex ) { list.Add(new KeyValuePair<string, string>(url, ex.GetBaseException().Message)); } viewData.Result = list; } } context.WriteHeader("action-after-await-return"); return new PageResult(null, viewData); }