When I deserialise-serialise-deserialise and compare request and request2 in code below, UserAgent header has the correct .ToString() value but count is 0. So my unit test was failing:
var stream = new FileStream("Request.bin", FileMode.Open);
var serializer = new MessageContentHttpMessageSerializer();
var request = serializer.DeserializeToRequest(stream);
var memoryStream = new MemoryStream();
serializer.Serialize(request, memoryStream);
memoryStream.Position = 0;
var request2 = serializer.DeserializeToRequest(memoryStream);
Comments: Based on the comment, looks like this is fixed.
var stream = new FileStream("Request.bin", FileMode.Open);
var serializer = new MessageContentHttpMessageSerializer();
var request = serializer.DeserializeToRequest(stream);
var memoryStream = new MemoryStream();
serializer.Serialize(request, memoryStream);
memoryStream.Position = 0;
var request2 = serializer.DeserializeToRequest(memoryStream);
Comments: Based on the comment, looks like this is fixed.