Как создать sub контейнер в голубом месте хранения.
Сообщите нам
Windows Azure не предоставляет концепцию иерархических контейнеров, но предоставляет механизм перемещения по иерархии с помощью конвенции и API. Все контейнеры хранятся на одном уровне. Вы можете получить аналогичную функциональность, используя соглашения об именовании для имен ваших контейнеров.
Например, вы можете создать контейнер с именем "content" и создать в нем блобы со следующими именами:
content/blue/images/logo.jpg
content/blue/images/icon-start.jpg
content/blue/images/icon-stop.jpg
content/red/images/logo.jpg
content/red/images/icon-start.jpg
content/red/images/icon-stop.jpg
Обратите внимание, что эти блобы представляют собой плоский список в контейнере "content". При этом использование символа "/" в качестве условного разделителя дает вам возможность просматривать их в иерархическом порядке.
protected IEnumerable<IListBlobItem>
GetDirectoryList(string directoryName, string subDirectoryName)
{
CloudStorageAccount account =
CloudStorageAccount.FromConfigurationSetting("DataConnectionString");
CloudBlobClient client =
account.CreateCloudBlobClient();
CloudBlobDirectory directory =
client.GetBlobDirectoryReference(directoryName);
CloudBlobDirectory subDirectory =
directory.GetSubdirectory(subDirectoryName);
return subDirectory.ListBlobs();
}
Затем вы можете вызвать это следующим образом:
GetDirectoryList("content/blue", "images")
Обратите внимание на использование методов GetBlobDirectoryReference и GetSubDirectory и типа CloudBlobDirectory вместо CloudBlobContainer. Они обеспечивают функциональность обхода, которую вы, скорее всего, ищете.
Это должно помочь вам начать работу. Дайте мне знать, если это не ответит на ваш вопрос:
[ Спасибо Neil Mackenzie за вдохновение ]
Вы имеете в виду хранилище BLOB-объектов? В таком случае иерархия выглядит просто StorageAccount / Container / BlobName. Вложенных контейнеров нет.
При этом вы можете использовать косую черту в имени большого двоичного объекта для имитации вложенных контейнеров в URI. См. эту статью в MSDN для получения подробных сведений об именах.