HttpClient is a part of .NET Framework 4.5 and Windows Store apps that provides developers an extremely easy way to connect with services across the internet including REST-based services. But if you wanted to use the same library in Windows Phone 8 or a portable library you were out of luck.
Last month Microsoft changed this by releasing a Beta of the portable version of HttpClient.
This release of HttpClient adds support for the following platforms:
- .NET framework 4.0
- Windows Phone 7.5 and higher
- Portable class libraries
What do I need?
In order to use this release of HttpClient you need to ensure that you have two things.
- Visual Studio 2010 (for .NET 4.0 Windows Phone 7.1) or Visual Studio 2012 (required for .NET 4.5, Windows Store and Windows Phone 8).
- The NuGet package manager version 2.1 or higher.
To use the HttpClient package, right click on your solution, go to the Manage Nuget Packages dialog, search for Id Microsoft.Net.Http, and make sure “Include Prerelease” is turned on.
Remark:
If you are writing a cross platform app targeting .Net 4.0 or the windows phone and you start using the HttpClient, you probably will get a compile error:
“Cannot await System.Threading.Task<HttpRequestMessage>”
This is because .Net 4.0 and Windows Phone 7.5 did not support the async/await keywords.In order to fix this add a reference to the Microsoft.Bcl.Async nuget package, which adds the support for Async and Await in down level platforms.