public async Task UsingAzureBlobs() { //Using the environment variable 'AzureWebJobsStorage' for storage authentication //AzureBlobs blobs = new AzureBlobs("samplecontainer"); //Using literal connection string for authentication AzureBlobs blobs = new AzureBlobs("samplecontainer", "my_connection_string", null); //Creating "samplecontainer". Loading it if already exists. blobs.CreateOrLoadStructure(); //Set this true to deactivate inner logs. blobs.LoggingDisabled = false; //Sending a blob to the container from an absolute path await blobs.UploadBlob("C:\\Users\\foo\\Desktop\\image.png", "wallpaper.png"); //Sending a blob to the container from an relative path. In this case the name can be the same for both await blobs.UploadBlob("reports.json"); //Downloading a blob as Strean Stream stream = await blobs.DownloadBlobAsStream("wallpaper.png"); //Downloading a blob as a local file await blobs.DownloadBlobAsFile("wallpaper.png", "C:\\Users\\foo\\Desktop\\image-copy.png"); }
public static void InitializeAzureStorage() { string storageConnectionString = CloudConfigurationManager.GetSetting("StorageConnectionString"); string ocrQueueName = RoleEnvironment.GetConfigurationSettingValue("OCRQueueName"); string imageBlobContainerName = RoleEnvironment.GetConfigurationSettingValue("ImageBlobContainerName"); string ocrJobTableName = RoleEnvironment.GetConfigurationSettingValue("OCRJobTableName"); // Email queue and Text blob container won't be used in Web Role so we'll just pass nulls. // Sure, in this situation AzureQueues and AzureBlobs classes don't look like good design but let's keep it simple. // I don't want to use tons of interfaces, DI and statelessness and in a simple 1K LOC project like this. AzureQueues.Initialize(storageConnectionString, ocrQueueName, null); AzureBlobs.Initialize(storageConnectionString, imageBlobContainerName, null); AzureTables.Initialize(storageConnectionString, ocrJobTableName); }
private void InitializeAzureStorage() { Trace.TraceInformation("Initializing Azure Storage."); Trace.TraceInformation("Loading storage settings."); string storageConnectionString = RoleEnvironment.GetConfigurationSettingValue("StorageConnectionString"); string textBlobContainerName = RoleEnvironment.GetConfigurationSettingValue("TextBlobContainerName"); string emailQueueName = RoleEnvironment.GetConfigurationSettingValue("EmailQueueName"); string ocrJobTableName = RoleEnvironment.GetConfigurationSettingValue("OCRJobTableName"); Trace.TraceInformation("Initializing Blobs."); AzureBlobs.Initialize(storageConnectionString, null, textBlobContainerName); Trace.TraceInformation("Initializing Queues."); AzureQueues.Initialize(storageConnectionString, null, emailQueueName); Trace.TraceInformation("Initializing Tables."); AzureTables.Initialize(storageConnectionString, ocrJobTableName); }