public static void Main()
int? ContentLength = Int32.MaxValue;
var initialBody = "0123456789";
using (var Body = GenerateStreamFromString(initialBody))
Console.WriteLine("ContentLength={0} and Body.Length={1}", ContentLength, Body.Length);
var buffer = new byte[Convert.ToInt32(ContentLength ?? Body.Length)];
Body.ReadAsync(buffer, 0, buffer.Length);
var requestBody = Encoding.UTF8.GetString(buffer);
Console.WriteLine("Result={0}, Length={1}",requestBody, requestBody.Length);
public static Stream GenerateStreamFromString(string s)
var stream = new MemoryStream();
var writer = new StreamWriter(stream);