Mulai menggunakan Azure Cosmos DB untuk MongoDB menggunakan .NET
Artikel
BERLAKU UNTUK:
MongoDB
Artikel ini memperlihatkan kepada Anda cara menyambungkan ke Azure Cosmos DB untuk MongoDB menggunakan .NET Core dan paket NuGet yang relevan. Setelah terhubung, Anda dapat melakukan operasi pada database, koleksi, dan dokumen.
Buat aplikasi .NET Core baru di folder kosong menggunakan terminal pilihan Anda. Untuk skenario ini, Anda akan menggunakan aplikasi konsol. Gunakan perintah dotnet new untuk membuat dan memberi nama aplikasi konsol.
dotnet new console -o app
Tambahkan paket NuGet MongoDB ke proyek konsol. Gunakan perintah dotnet add package yang menentukan nama paket NuGet.
dotnet add package MongoDB.Driver
Untuk menjalankan aplikasi, gunakan terminal untuk menavigasi ke direktori aplikasi dan menjalankannya.
dotnet run
Menyambungkan ke Azure Cosmos DB untuk MongoDB dengan driver asli MongoDB
Untuk menyambungkan ke Azure Cosmos DB dengan driver asli MongoDB, buat instans kelas MongoClient. Kelas ini adalah titik awal untuk melakukan semua operasi terhadap database MongoDb. Konstruktor paling umum untuk MongoClient menerima string koneksi, yang dapat Anda ambil menggunakan langkah-langkah berikut:
# Variable for resource group name
resourceGroupName="msdocs-cosmos"
Gunakan perintah az cosmosdb list untuk mengambil nama akun Azure Cosmos DB pertama di grup sumber daya Anda dan simpan di variabel shell accountName.
# Retrieve most recently created account name
accountName=$(
az cosmosdb list \
--resource-group $resourceGroupName \
--query "[0].name" \
--output tsv
)
Buat variabel shell untuk RESOURCE_GROUP_NAME.
# Variable for resource group name
$RESOURCE_GROUP_NAME = "msdocs-cosmos"
Gunakan cmdlet Get-AzCosmosDBAccountKey untuk mengambil nama akun Azure Cosmos DB pertama di grup sumber daya Anda dan menyimpannya di variabel shell accountName.
# Get the name of the first Azure Cosmos DB account in your resource group
$ACCOUNT_NAME = (Get-AzCosmosDBAccount -ResourceGroupName $RESOURCE_GROUP_NAME)[0].Name
Lewati langkah ini dan gunakan informasi untuk portal di langkah berikutnya.
Navigasikan ke halaman akun Azure Cosmos DB for MongoDB yang sudah ada.
Dari halaman akun Azure Cosmos DB for MongoDB, pilih opsi menu navigasi String Koneksi.
Rekam nilai untuk bidang STRING KONEKSI PRIMER. Anda menggunakan nilai ini di langkah selanjutnya.
Mengonfigurasi variabel lingkungan
Untuk menggunakan nilai STRING KONEKSI dalam kode Anda, atur nilai ini di lingkungan lokal yang menjalankan aplikasi. Untuk mengatur variabel lingkungan, gunakan terminal pilihan Anda untuk menjalankan perintah berikut:
File .env merupakan cara standar untuk menyimpan variabel lingkungan dalam proyek. Buatlah file .env di akar proyek Anda. Tambahkan baris berikut ke file .env:
Tentukan instans baru dari kelas MongoClient menggunakan konstruktor dan variabel string koneksi yang Anda tetapkan sebelumnya.
// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));
var settings = client.Settings;
Console.WriteLine(settings.Server.Host);
Gunakan kelas klien MongoDB dengan Azure Cosmos DB untuk API untuk MongoDB
Sebelum Anda mulai membangun aplikasi, mari kita lihat hierarki sumber daya di Azure Cosmos DB. Azure Cosmos DB memiliki model objek tertentu yang digunakan untuk membuat dan mengakses sumber daya. Azure Cosmos DB membuat sumber daya dalam hierarki yang terdiri dari akun, database, koleksi, dan dokumen.
Diagram hierarkis memperlihatkan akun Azure Cosmos DB untuk MongoDB di bagian atas. Akun ini memiliki dua node database turunan. Salah satu node database tersebut memiliki dua node koleksi turunan. Node database lainnya memiliki satu node koleksi turunan. Satu node koleksi tersebut memiliki tiga node dokumen turunan.
Setiap jenis sumber daya diwakili oleh satu atau lebih kelas C# terkait. Berikut adalah daftar kelas yang paling umum:
Kelas ini menyediakan representasi logis sisi klien untuk lapisan API untuk MongoDB di Azure Cosmos DB. Klien ini digunakan untuk mengonfigurasi dan menjalankan permintaan terhadap layanan.
Kelas ini adalah referensi ke database yang mungkin sudah ada, atau mungkin belum ada dalam layanan. Database divalidasi atau dibuat di sisi server saat Anda mencoba melakukan operasi terhadapnya.
Kelas ini merupakan referensi koleksi yang mungkin juga belum ada dalam layanan. Koleksi divalidasi di sisi server saat Anda mencoba untuk menggunakannya.
Panduan berikut menunjukkan cara menggunakan masing-masing kelas ini untuk membangun aplikasi Anda dan mengelola data.
Pelajari cara mendiagnosis dan memperbaiki pengecualian permintaan buruk seperti konten input atau kunci partisi invalid, kunci partisi tidak cocok di Azure Cosmos DB.
Mulai mengembangkan aplikasi .NET yang berfungsi dengan Azure Cosmos DB untuk NoSQL. Artikel ini membantu Anda mempelajari cara menyiapkan proyek dan mengonfigurasi akses ke titik akhir Azure Cosmos DB for NoSQL.