Arango.Tests.PerformanceTests.SimpleHttpPostCreateDocument C# (CSharp) Метод

SimpleHttpPostCreateDocument() приватный Метод

private SimpleHttpPostCreateDocument ( string uri, string body ) : string
uri string
body string
Результат string
        private string SimpleHttpPostCreateDocument(string uri, string body)
        {
            var responseBody = "";
            var httpRequest = HttpWebRequest.CreateHttp(uri);

            httpRequest.KeepAlive = true;
            httpRequest.SendChunked = false;
            httpRequest.Method = "POST";
            httpRequest.UserAgent = ASettings.DriverName + "/" + ASettings.DriverVersion;

            /*if (!string.IsNullOrEmpty(Username) && !string.IsNullOrEmpty(Password))
            {
                httpRequest.Headers.Add(
                    "Authorization",
                    "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(Username + ":" + Password))
                );
            }*/

            if (!string.IsNullOrEmpty(body))
            {
                httpRequest.ContentType = "application/json; charset=utf-8";

                var data = Encoding.UTF8.GetBytes(body);
                var stream = httpRequest.GetRequestStream();

                stream.Write(data, 0, data.Length);
                stream.Flush();

                stream.Close();
                stream.Dispose();
            }
            else
            {
                httpRequest.ContentLength = 0;
            }

            try
            {
                using (var httpResponse = (HttpWebResponse)httpRequest.GetResponse())
                {
                    var responseStream = httpResponse.GetResponseStream();
                    var reader = new StreamReader(responseStream);

                    responseBody = reader.ReadToEnd();

                    reader.Close();
                    reader.Dispose();
                    responseStream.Close();
                    responseStream.Dispose();
                }
            }
            catch (WebException webException)
            {
                if ((webException.Status == WebExceptionStatus.ProtocolError) &&
                    (webException.Response != null))
                {
                    using (var exceptionHttpResponse = (HttpWebResponse)webException.Response)
                    {

                        if (exceptionHttpResponse.ContentLength > 0)
                        {
                            using (var exceptionResponseStream = exceptionHttpResponse.GetResponseStream())
                            using (var exceptionReader = new StreamReader(exceptionResponseStream))
                            {
                                responseBody = exceptionReader.ReadToEnd();
                            }
                        }
                    }
                }
                else
                {
                    throw;
                }
            }

            return responseBody;
        }