Работа с корневым контейнером

Обновлено: Май 2015 г.

Корневой контейнер является контейнером по умолчанию для вашей учетной записи хранилища. Учетная запись хранилища может иметь один корневой контейнер. Корневой контейнер должен быть явно создан и иметь имя $root.

К большим двоичным объектам, хранящимся в корневом контейнере, можно обращаться без указания имени корневого контейнера. Таким образом, можно обращаться к большому двоичному объекту на высшем уровне иерархии учетной записи хранения. Например, теперь вы можете обратиться к большому двоичному объекту, который находится в корневом контейнере, следующим образом.

https://myaccount.blob.core.windows.net/mywebpage.html

Для использования корневого контейнера с учетной записью хранилища создайте новый контейнер с именем $root. В следующем примере запроса показано, как создать корневой контейнер и передать в него большой двоичный объект:

CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));

CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer blobContainer = blobClient.GetContainerReference("$root");
blobContainer.Create();

CloudBlockBlob blob = blobContainer.GetBlockBlobReference("BlobInRoot.txt");
blob.UploadText("This is a blob in the root container.");

Как и другие контейнеры, корневой контейнер можно сделать открытым для общего анонимного доступа. Если корневой контейнер присутствует, то он отображается в списке контейнеров учетной записи хранения. При перечислении больших двоичных объектов в корневом контейнере контейнер не отображается в URL-адресах полученных ресурсов. Вы также можете удалить корневой контейнер, если он вам больше не нужен.

ImportantВажно!
Большой двоичный объект в корневом контейнере не может содержать косую черту (/) в своем имени, также будьте внимательны и не включайте завершающую косую черту (/) при обращении к большому двоичному объекту в корневом контейнере. Например, использование этого URI-адреса приведет к ошибке:

https://myaccount.blob.core.windows.net/myblob/

В приведенном выше примере служба BLOB-объектов считывает имя контейнера как «myblob» и ожидает имя большого двоичного объекта после завершающей косой черты. Запрос сформирован неправильно из-за отсутствующего имени большого двоичного объекта.

Построение URI-адреса большого двоичного объекта myphoto, который находится в корневом контейнере.

https://myaccount.blob.core.windows.net/myphoto

Вы также можете явно указать корневой контейнер:

https://myaccount.blob.core.windows.net/$root/myphoto

См. также

Показ: