Membuat kontainer di Azure Cosmos DB untuk NoSQL menggunakan .NET
BERLAKU UNTUK: NoSQL
Kontainer di Azure Cosmos DB menyimpan set item. Sebelum Anda dapat membuat, mengkueri, atau mengelola item, Anda terlebih dahulu harus membuat kontainer.
Beri kontainer nama
Di Azure Cosmos DB, kontainer dianalogikan dengan tabel dalam database relasional. Saat Anda membuat kontainer, nama kontainer membentuk segmen URI yang digunakan untuk mengakses sumber daya kontainer dan item turunan apa pun.
Berikut beberapa aturan cepat saat memberi nama kontainer:
- Nama kontainer tidak boleh kosong.
- Nama kontainer tidak boleh lebih panjang dari 256 karakter.
Setelah dibuat, URI untuk kontainer berada dalam format ini:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Tip
Untuk informasi selengkapnya tentang batas nama kontainer, lihat kuota dan batas layanan
Membuat kontainer
Untuk membuat kontainer, panggil salah satu metode berikut:
Membuat kontainer secara asinkron
Contoh berikut membuat kontainer secara asinkron:
// New instance of Container class referencing the server-side container
Container container1 = await database.CreateContainerAsync(
id: "products-1",
partitionKeyPath: "/category",
throughput: 400
);
Metode ini Database.CreateContainerAsync
melemparkan pengecualian jika database dengan nama yang sama sudah ada.
Membuat database secara asinkron jika belum ada
Contoh berikut membuat kontainer secara asinkron hanya jika kontainer tersebut belum ada di akun:
// New instance of Container class referencing the server-side container
Container container2 = await database.CreateContainerIfNotExistsAsync(
id: "products-2",
partitionKeyPath: "/category",
throughput: 400
);
Metode Database.CreateContainerIfNotExistsAsync
ini hanya membuat kontainer baru jika belum ada. Metode ini berguna untuk menghindari kesalahan jika Anda menjalankan kode yang sama beberapa kali.
Mengurai respons
Dalam semua contoh sejauh ini, respons dari permintaan asinkron segera ditransmisikan ke jenis Container
. Anda mungkin ingin mengurai metadata tentang respons termasuk header dan kode status HTTP. Jenis pengembalian true untuk metode Database.CreateContainerAsync dan Database.CreateContainerIfNotExistsAsync adalah ContainerResponse
.
Contoh berikut menunjukkan metode Database.CreateContainerIfNotExistsAsync yang mengembalikan ContainerResponse. Setelah dikembalikan, Anda dapat mengurai properti respons dan kemudian pada akhirnya mendapatkan objek Kontainer yang mendasar:
// New instance of Container class referencing the server-side container
ContainerResponse response = await database.CreateContainerIfNotExistsAsync(
id: "products-3",
partitionKeyPath: "/category",
throughput: 400
);
// Parse additional response properties
Container container3 = response.Container;
Langkah berikutnya
Sekarang setelah Anda membuat kontainer, gunakan panduan berikutnya untuk membuat item.