Overview

This page is about the Microsoft.Net.Http package. Our first release announcement can be found here.

Release Notes

Microsoft HTTP Client Libraries 2.2.28

  • Updated to stable, no other changes

Microsoft HTTP Client Libraries 2.2.27-beta

  • Fixed issue causing hang when an exception was thrown within BeginGetRequestStream method.

Microsoft HTTP Client Libraries 2.2.23-beta

  • Fixed issue with content buffer allocation for HEAD requests.
  • Fixed issue for HttpRequestMessage unbounded range throwing exception.

Microsoft HTTP Client Libraries 2.2.22

  • Fixed an issue with Windows Phone 8.1 when using portable libraries and IWebProxy, DecompressionMethods, or TransportContext.
  • Added specific lib folders for monoandroid and monotouch.

Microsoft HTTP Client Libraries 2.2.20

  • Updated package dependencies and clarified supported platforms.

Microsoft HTTP Client Libraries 2.2.19

  • Added Windows Phone 8.1 support

Microsoft HTTP Client Libraries 2.2.18

  • Announcement
  • Updated license to remove Windows-only restriction

Microsoft HTTP Client Libraries 2.2.15

  • Fixed bug where the decompression would always run synchronously, even if the stream is read asynchronously

Microsoft HTTP Client Libraries 2.2.13

Microsoft HTTP Client Libraries 2.2.10-RC

  • Announcement
  • Disabled write stream buffering on Windows Phone 8 when AllowAutoRedirect is set to false, which reduces memory usage.
  • Enabled setting credentials for Silverlight when using the client networking stack
  • Fixed some exception messages which referred to nonexistent APIs
  • Made package metadata updates

Microsoft HTTP Client Libraries 2.2.7-Beta

  • Announcement
  • Removed dependency on Microsoft.Bcl.Compression while keeping support for automatic decompression

Microsoft HTTP Client Libraries 2.2.3-Beta

Microsoft.Net.Http 2.1.10 RTM

Microsoft.Net.Http 2.1.6 RC

  • Announcement
  • When consuming a portable class library depending on HttpClient from a Windows Store application, the app can crash with a MissingMethodException. We’ve fixed it by using the same technique we explained in our blog post about Microsoft.Bcl.Async): we ensure during the build that the application has a reference to the NuGet package.
  • Installing HttpClient NuGet package into an application can corrupt existing binding redirects in the app.config file
  • The encoding ISO-8859-1 isn’t supported on Silverlight-based platforms
    When using HttpClient in Silverlight over the browser networking stack aborting the HTTP connection can result in a NullReferenceException
  • Header values containing commas get incorrectly split into multiple headers.
  • HttpClientHandler.AllowAutoRedirect can’t be set on Windows Phone 8 although it should be supported.
  • HttpWebRequest.AllowReadStreamBuffering defaults to true on Windows Phone which prevents practical use of HttpClient with chunked responses, such as streaming live data.

Microsoft.Net.Http 2.1.3 Beta

  • Announcement
  • First release of the portable version of HttpClient
Troubleshooting

Issue 1

Fixed.

Issue 2

Fixed.

Issue 3

Symptom

When using HttpClient from a Silverlight application many http headers are not supported and will result in an ArgumentException or NotImplementedException when set and calling HttpClient methods that send a request.

Resolution

For a list of headers which are not supported in Silverlight please see:
http://msdn.microsoft.com/en-us/library/system.net.webheadercollection(v=vs.95).aspx
http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.headers(v=vs.95).aspx

Issue 4

Symptom

When HttpClientHandler.SupportsProtocolVersion() is false the HttpResponseMessage returned from a request will have a null value for Version.

Resolution

Make sure that anytime you are using a version from the HttpResponseMessage, you do a null check on it if SupportsProtocolVersion() is false.

Issue 5

Fixed.

Issue 6

Symptom

When using HttpClient on Silverlight or the Phone be aware that the networking stack may cache responses. 

Resolution

To avoid inconsistencies when creating  portable class library that runs on both platforms be sure that your server sets the cache control-header on the response to match your expected caching behavior on the Phone.  If you do not control the server, consider making a portion of the request unique if you do not want a cached result.

Issue 7

Fixed.

Issue 8

Symptom

ClickOnce applications targeting .NET Framework 4.0 that reference the Microsoft.Net.Http package may experience a TypeLoadException or other errors after being installed.

Resolution

This occurs because ClickOnce fails to deploy certain required assemblies. As a workaround, do the following:

  1. Right-click on the project and choose Add Existing Item
  2. Browse to the HttpClient net40 package folder
  3. In the File name text box enter *.*
  4. Holding CTRL, select System.Net.Http.dll and System.Net.Http.Primitives.dll
  5. Click the down-arrow next to the Add button and choose Add as Link
  6. In Solution Explorer, holding CTRL select System.Net.Http.dll and System.Net.Http.WebRequest.dll
  7. Right-click the selection, choose Properties and change Copy to Output Directory to Copy always
  8. Republish