private static HttpWebRequest GetRequestForGet(Guid subscriptionId, string certificateThumbprint, string serviceName, string deploymentSlot)
 {
     string getDeploymentUrl = GetGetDeploymentUrl(subscriptionId.AzureRestFormat(), serviceName, deploymentSlot);
     Uri requestUri = new Uri(getDeploymentUrl);
     HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(requestUri);
     httpWebRequest.Headers.Add(RequestHeaderName.MSVersion, RequestMSVersion.December2011);
     httpWebRequest.Method = RequestMethod.Get;
     httpWebRequest.ContentType = RequestContentType.ApplicationXml;
     X509Certificate2 certificate = CertificateStore.GetCertificateFromCurrentUserStore(certificateThumbprint);
     httpWebRequest.ClientCertificates.Add(certificate);
     return httpWebRequest;
 }
        private static HttpWebRequest GetRequestForCreate(Guid subscriptionId, string certificateThumbprint, string serviceName, string deploymentSlot, string deploymentName, Uri packageUrl, string label, string configurationFilePath, bool startDeployment, bool treatWarningsAsError)
        {
            string deleteDeploymentUrl = GetCreateDeploymentUrl(subscriptionId.AzureRestFormat(), serviceName, deploymentSlot);
            Uri requestUri = new Uri(deleteDeploymentUrl);
            HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(requestUri);
            httpWebRequest.Headers.Add(RequestHeaderName.MSVersion, RequestMSVersion.December2011);
            httpWebRequest.Method = RequestMethod.Post;
            httpWebRequest.ContentType = RequestContentType.ApplicationXml;
            X509Certificate2 certificate = CertificateStore.GetCertificateFromCurrentUserStore(certificateThumbprint);
            httpWebRequest.ClientCertificates.Add(certificate);
            XDocument requestBody = GetCreateDeploymentRequestBody(deploymentName, packageUrl, label, configurationFilePath, startDeployment, treatWarningsAsError);
            Stream requestStream = null;
            try
            {
                requestStream = httpWebRequest.GetRequestStream();
                using (StreamWriter streamWriter = new StreamWriter(requestStream, Encoding.UTF8))
                {
                    requestStream = null;
                    requestBody.Save(streamWriter, SaveOptions.DisableFormatting);
                }
            }
            finally
            {
                if (requestStream != null)
                {
                    requestStream.Dispose();
                }
            }

            return httpWebRequest;
        }