Microsoft.Research.DataOnboarding.RepositoryAdapters.SkyDrive.SkyDriveAdapter.CreateFolder C# (CSharp) Method

CreateFolder() private method

Creates the folder.
private CreateFolder ( string folderName, string parentFolderId, AuthToken token ) : string
folderName string Folder Name.
parentFolderId string Parent Folder Id.
token Microsoft.Research.DataOnboarding.DomainModel.AuthToken AuthToken instance.
return string
        private string CreateFolder(string folderName, string parentFolderId, AuthToken token)
        {
            HttpWebRequest request = WebRequest.Create(string.Format("{0}/{1}", skydriveBaseUrl, parentFolderId)) as HttpWebRequest;
            request.Headers.Add("Authorization", string.Format("Bearer {0}",HttpUtility.UrlEncode(token.AccessToken)));
            request.Method = "POST";
            request.ContentType = "application/json;boundary=" + skyDriveMultiPartRequestBoundary;
            
            Dictionary<string, string> data = new Dictionary<string, string>();
            data.Add("name", folderName);

            JavaScriptSerializer serializer = new JavaScriptSerializer();
            string postData = serializer.Serialize(data);

            using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
            {
                writer.Write(postData);
            }

            using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
            {
                DataContractJsonSerializer dataContractSerializer = new DataContractJsonSerializer(typeof(Content));
                Content content = dataContractSerializer.ReadObject(response.GetResponseStream()) as Content;

                if (content != null)
                {
                    return content.Id;
                }
            }

            return null;
        }