WP8中使用async/await扩展HttpWebRequest

前文讲到WP8中使用Async执行HTTP请求,用了微软提供的扩展。下面提供了一种方法,自己实现HttpWebRequest的扩展。

随后就可以使用 await HttpWebRequest.GetResponseAsync() 轻松使用http请求了。

    public static class WebRequestExtensions
    {
        public async static Task<WebResponse> GetResponseAsync(this HttpWebRequest request)
        {
            return await Task<WebResponse>.Factory.FromAsync(request.BeginGetResponse, request.EndGetResponse, request);
        }

        public async static Task<Stream> GetRequestStreamAsync(this HttpWebRequest request)
        {
            return await Task<Stream>.Factory.FromAsync(request.BeginGetRequestStream, request.EndGetRequestStream, request);
        }
    }

原文http://blog.liubaicai.com/?p=280

原文地址:https://www.cnblogs.com/liubaicai/p/3644522.html