Impossibile creare il contenitore blob su Azure Blob archiviazione
-
05-10-2019 - |
Domanda
Il seguente codice genera un errore sulla chiamata al metodo "CreateIfNotExist". Sto tentando di collegarmi al mio stoccaggio Azure Blob e creare un nuovo contenitore denominato "immagini"
var storageAccount = new CloudStorageAccount(
new StorageCredentialsAccountAndKey("my_account_name", "my shared key"),
"https://blob.core.windows.net/",
"https://queue.core.windows.net/",
"https://table.core.windows.net/"
);
var blobClient = storageAccount.CreateCloudBlobClient();
var blobContainer = blobClient.GetContainerReference("images");
blobContainer.CreateIfNotExist();
L'errore è:
[StorageClientException: The requested URI does not represent any resource on the server.]
Il contenitore "immagini" non esiste, ma mi aspettavo di essere creato, invece di un errore da buttare. Che cosa sto facendo di sbagliato?
Ho provato HTTP invece di HTTPS ma il risultato è lo stesso errore.
Soluzione
Ho capito che devo usare una sintassi diversa
var storageAccount = new CloudStorageAccount(
new StorageCredentialsAccountAndKey("my_account_name", "my shared key"));
var blobClient = storageAccount.CreateCloudBlobClient();
var blobContainer = blobClient.GetContainerReference("images");
blobContainer.CreateIfNotExists();
Si noti come i punti finali sono omited. Evidentemente, il CloudBlobClient riesce a capire le URI adeguati automaticamente.
Altri suggerimenti
Sei sicuro che il nome dell'account e la chiave condivisa sono corrette? Si potrebbe provare a installare Fiddler a dare un'occhiata al traffico HTTP per assicurarsi che nulla ci sembra sospetto.