public void storeFile(String path, String fileName, String uploadFile) { CloudFileClient fileClient = this.storageAccount.CreateCloudFileClient(); CloudFileShare fileShare = fileClient.GetShareReference(this._appSettings.AzureFIleStoreName); if (fileShare.Exists()) { CloudFileDirectory root = fileShare.GetRootDirectoryReference(); CloudFileDirectory folder = root.GetDirectoryReference(path); if (!folder.Exists()) { folder.Create(); } CloudFile file = folder.GetFileReference(fileName); using (AutoResetEvent waitHandle = new AutoResetEvent(false)) { ICancellableAsyncResult result = file.BeginUploadFromFile(uploadFile, ar => waitHandle.Set(), new object()); waitHandle.WaitOne(); file.EndUploadFromFile(result); } } }