Membuat kontainer blob dengan .NET
Blob di Azure Storage diatur ke dalam kontainer. Sebelum mengunggah blob, Anda harus terlebih dahulu membuat kontainer. Artikel ini menunjukkan cara membuat kontainer dengan pustaka klien Azure Storage untuk .NET.
Prasyarat
- Artikel ini mengasumsikan Anda sudah memiliki proyek yang disiapkan untuk bekerja dengan pustaka klien Azure Blob Storage untuk .NET. Untuk mempelajari tentang menyiapkan proyek Anda, termasuk penginstalan paket, menambahkan arahan
using
, dan membuat objek klien resmi, lihat Mulai menggunakan Azure Blob Storage dan .NET. - Mekanisme otorisasi harus memiliki izin untuk membuat kontainer blob. Untuk mempelajari lebih lanjut, lihat panduan otorisasi untuk operasi REST API berikut:
Tentang penamaan kontainer
Nama kontainer harus merupakan nama DNS yang valid, karena membentuk bagian dari URI unik yang digunakan untuk merujuk kontainer atau blobnya. Ikuti aturan ini saat menamai kontainer:
- Nama kontainer dapat sepanjang 3 sampai 63 karakter.
- Nama kontainer harus diawali dengan huruf atau angka, dan hanya dapat berisi huruf kecil, angka, dan karakter tanda hubung (-).
- Karakter tanda hubung berturut-turut tidak diizinkan dalam nama kontainer.
URI untuk sumber daya kontainer diformat sebagai berikut:
https://my-account-name.blob.core.windows.net/my-container-name
Buat kontainer
Untuk membuat kontainer, panggil salah satu metode berikut dari BlobServiceClient
kelas :
Anda juga dapat membuat kontainer menggunakan salah satu metode berikut dari BlobContainerClient
kelas :
Metode ini memberikan pengecualian jika sudah ada kontainer dengan nama yang sama.
Kontainer dibuat segera di bawah akun penyimpanan. Tidak mungkin untuk menyarangkan satu kontainer di bawah kontainer lain.
Contoh berikut menggunakan BlobServiceClient
objek untuk membuat kontainer secara asinkron:
//-------------------------------------------------
// Create a container
//-------------------------------------------------
private static async Task<BlobContainerClient> CreateSampleContainerAsync(BlobServiceClient blobServiceClient)
{
// Name the sample container based on new GUID to ensure uniqueness.
// The container name must be lowercase.
string containerName = "container-" + Guid.NewGuid();
try
{
// Create the container
BlobContainerClient container = await blobServiceClient.CreateBlobContainerAsync(containerName);
if (await container.ExistsAsync())
{
Console.WriteLine("Created container {0}", container.Name);
return container;
}
}
catch (RequestFailedException e)
{
Console.WriteLine("HTTP error code {0}: {1}",
e.Status, e.ErrorCode);
Console.WriteLine(e.Message);
}
return null;
}
Buat kontainer root
Kontainer root berfungsi sebagai kontainer default untuk akun penyimpanan Anda. Setiap akun penyimpanan mungkin memiliki satu kontainer root, yang harus dinamakan $root. Kontainer root harus dibuat atau dihapus secara eksplisit.
Anda dapat merujuk blob yang disimpan dalam kontainer root tanpa menyertakan nama kontainer root. Kontainer root memungkinkan Anda untuk merujuk blob di tingkat atas hierarki akun penyimpanan. Misalnya, Anda dapat merujuk blob yang ada di kontainer root dengan cara berikut:
https://myaccount.blob.core.windows.net/default.html
Contoh berikut membuat kontainer root secara sinkron:
//-------------------------------------------------
// Create root container
//-------------------------------------------------
private static void CreateRootContainer(BlobServiceClient blobServiceClient)
{
try
{
// Create the root container or handle the exception if it already exists
BlobContainerClient container = blobServiceClient.CreateBlobContainer("$root");
if (container.Exists())
{
Console.WriteLine("Created root container.");
}
}
catch (RequestFailedException e)
{
Console.WriteLine("HTTP error code {0}: {1}",
e.Status, e.ErrorCode);
Console.WriteLine(e.Message);
}
}
Sumber
Untuk mempelajari selengkapnya tentang membuat kontainer menggunakan pustaka klien Azure Blob Storage untuk .NET, lihat sumber daya berikut ini.
Operasi REST API
Azure SDK untuk .NET berisi pustaka yang dibangun di atas Azure REST API, memungkinkan Anda berinteraksi dengan operasi REST API melalui paradigma .NET yang familier. Metode pustaka klien untuk membuat kontainer menggunakan operasi REST API berikut:
- Buat Kontainer (REST API)