Browse Source

added fixes to azure blob storage asset store

pull/76/head
pushrbx 9 years ago
parent
commit
a494b2e5e0
  1. 7
      src/Squidex.Infrastructure.Azure/Storage/AzureBlobAssetStore.cs
  2. 2
      src/Squidex.Infrastructure.Azure/Storage/IStorageAccountManager.cs
  3. 7
      src/Squidex.Infrastructure.Azure/Storage/StorageAccountManager.cs

7
src/Squidex.Infrastructure.Azure/Storage/AzureBlobAssetStore.cs

@ -65,7 +65,7 @@ namespace Squidex.Infrastructure.Azure.Storage
var blob = blobContainer.GetBlockBlobReference(blobName); var blob = blobContainer.GetBlockBlobReference(blobName);
if (!await blob.ExistsAsync()) if (!await blob.ExistsAsync())
return; throw new AssetNotFoundException($"Asset {blobName} not found.");
await blob.DownloadToStreamAsync(stream); await blob.DownloadToStreamAsync(stream);
} }
@ -98,7 +98,10 @@ namespace Squidex.Infrastructure.Azure.Storage
{ {
try try
{ {
blobContainer = azureStorageAccount.GetContainer(containerName); var task = azureStorageAccount.GetContainerAsync(containerName);
task.Wait();
blobContainer = task.Result;
} }
catch (Exception) catch (Exception)
{ {

2
src/Squidex.Infrastructure.Azure/Storage/IStorageAccountManager.cs

@ -17,6 +17,6 @@ namespace Squidex.Infrastructure.Azure.Storage
string GetSharedAccessSignature(); string GetSharedAccessSignature();
CloudBlobContainer GetContainer(string name); Task<CloudBlobContainer> GetContainerAsync(string name);
} }
} }

7
src/Squidex.Infrastructure.Azure/Storage/StorageAccountManager.cs

@ -45,10 +45,13 @@ namespace Squidex.Infrastructure.Azure.Storage
}); });
} }
public CloudBlobContainer GetContainer(string name) public async Task<CloudBlobContainer> GetContainerAsync(string name)
{ {
var blobClient = CreateCloudBlobClient(); var blobClient = CreateCloudBlobClient();
return blobClient.GetContainerReference(name); var container = blobClient.GetContainerReference(name);
await container.CreateIfNotExistsAsync();
return container;
} }
} }
} }
Loading…
Cancel
Save