This post shows how to write a code in X++ to upload file in Azure Blob. Please refer to the following X++ method to understand how it works.
/// <summary>
/// Uploads file to Azure Blob
/// </summary>
/// <param name = "_csvFileContent">CSV file contents</param>
private void uploadToBlob(str _csvFileContent)
{
CloudBlobClient cloudBlobClient;
CloudBlobContainer cloudBlobContainer;
CloudStorageAccount cloudStorageAccount;
if (!payrollParameters.CUSBlobAccount || !payrollParameters.CUSBlobKey || !payrollParameters.CUSBlobContainer)
{
throw error("@CMCTS:DonationReportBlobMissingParam");
}
System.Byte[] reportBytes = new System.Byte[0]();
System.Text.ASCIIEncoding enc = new System.Text.ASCIIEncoding();
reportBytes = enc.GetBytes(_csvFileContent);
System.IO.MemoryStream memoryStream = new System.IO.MemoryStream(reportBytes);
var storageCredentials = new Microsoft.WindowsAzure.Storage.Auth.StorageCredentials(payrollParameters.CUSBlobAccount, payrollParameters.CUSBlobKey);
try
{
cloudStorageAccount = new Microsoft.WindowsAzure.Storage.CloudStorageAccount(storageCredentials, true);
if (cloudStorageAccount)
{
cloudBlobClient = cloudStorageAccount.CreateCloudBlobClient();
cloudBlobContainer = cloudBlobClient.GetContainerReference(payrollParameters.CUSBlobContainer);
CloudBlockBlob CloudBlockBlob = cloudBlobContainer.GetBlockBlobReference(exportFileName);
CloudBlockBlob.UploadFromStream(memoryStream, null, null, null);
Info("@CMCTS:UploadToBlobSuccessful");
}
}
catch
{
error("@CMCTS:DonationReportAzureBlobConnectError");
error("@CMCTS:UploadToBlobUnSuccessful");
}
}
No comments:
Post a Comment