Pregunta

El siguiente código genera un error en el "CreateIfNotExist" llamada al método. Estoy intentando conectar a mi almacenamiento de Azure Blob y crear un nuevo contenedor llamado "imágenes"

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();

El error es:

[StorageClientException: The requested URI does not represent any resource on the server.]

El contenedor "imágenes" no existe, pero esperaba que se va a crear en lugar de un error de ser lanzado. ¿Qué estoy haciendo mal?

He tratado HTTP en lugar de HTTPS pero el resultado es el mismo error.

¿Fue útil?

Solución

he dado cuenta de que tengo que utilizar una sintaxis diferente

var storageAccount = new CloudStorageAccount(
   new StorageCredentialsAccountAndKey("my_account_name", "my shared key"));
var blobClient = storageAccount.CreateCloudBlobClient(); 
var blobContainer = blobClient.GetContainerReference("images"); 
blobContainer.CreateIfNotExists(); 

Observe cómo se omitido los puntos finales. Evidentemente, el CloudBlobClient puede averiguar los URIs adecuados automáticamente.

Otros consejos

¿Está seguro el nombre de cuenta y la clave compartida en lo correcto? Usted puede tratar de instalar Fiddler para echar un vistazo al tráfico HTTP para asegurarse de que no hay nada parece sospechoso.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top