開始搭配 Azure Cosmos DB for MongoDB 使用 .NET
適用於: MongoDB
本文說明如何使用 .NET Core 和相關 NuGet 套件連線至 Azure Cosmos DB for MongoDB。 連線之後,您即可在資料庫、集合和文件上執行作業。
注意
範例程式碼片段可在 GitHub 上作為 .NET Core 專案提供。
API for MongoDB 參考文件 | MongoDB 套件 (NuGet)
必要條件
- 具有有效訂用帳戶的 Azure 帳戶。 免費建立帳戶。
- .NET 6.0
- Azure 命令列介面 (CLI) 或 Azure PowerShell
- Azure Cosmos DB for MongoDB 資源
建立新的 .NET Core 應用程式
使用您慣用的終端機,在空白資料夾中建立新的 .NET Core 應用程式。 在此案例中,您將使用主控台應用程式。 使用
dotnet new
命令來建立和命名主控台應用程式。dotnet new console -o app
將 MongoDB NuGet 套件新增至主控台專案。 使用指定 NuGet 套件名稱的
dotnet add package
命令。dotnet add package MongoDB.Driver
若要執行應用程式,請使用終端機瀏覽至應用程式目錄並執行應用程式。
dotnet run
使用 MongoDB 原生驅動程式連線至 Azure Cosmos DB for MongoDB
若要使用 MongoDB 原生驅動程式連線至 Azure Cosmos DB,請建立 MongoClient
類別的執行個體。 此類別是對 MongoDb 資料庫執行所有作業的起點。 MongoClient 最常見的建構函式會接受連接字串,而您可以使用下列步驟來擷取該字串:
取得資源名稱
建立 resourceGroupName 的殼層變數。
# Variable for resource group name resourceGroupName="msdocs-cosmos"
使用
az cosmosdb list
命令來擷取資源群組中第一個 Azure Cosmos DB 帳戶的名稱,並將其儲存在 accountName 殼層變數中。# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
擷取連接字串
使用
az cosmosdb keys list
命令,從帳戶的連接字串清單中尋找 API for MongoDB 連接字串。az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
記錄 PRIMARY KEY 值。 稍後您將使用這些認證。
設定環境變數
若要在程式碼內使用 CONNECTION STRING 值,請在執行應用程式的本機環境中設定此值。 若要設定環境變數,請使用您慣用的終端機來執行下列命令:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
使用連接字串建立 MongoClient
使用建構函式和您先前設定的連接字串變數來定義 MongoClient
類別的新執行個體。
// New instance of CosmosClient class
var client = new MongoClient(Environment.GetEnvironmentVariable("COSMOS_CONNECTION_STRING"));
var settings = client.Settings;
Console.WriteLine(settings.Server.Host);
使用 MongoDB 用戶端類別搭配適用於 API for MongoDB 的 Azure Cosmos DB
在開始建置應用程式之前,讓我們看一下 Azure Cosmos DB 中的資源階層。 Azure Cosmos DB 具有用來建立和存取資源的特定物件模型。 Azure Cosmos DB 會在由帳戶、資料戶、集合和文件所組成的階層中建立資源。
階層式圖表:頂端顯示 Azure Cosmos DB 資料庫帳戶。 帳戶有兩個子資料庫節點。 其中一個資料庫節點包含兩個子集合節點。 另一個資料庫節點包含單一子集合節點。 該單一集合節點有三個子文件節點。
每種資源以一或多個相關聯的 C# 類別來表示。 以下是最常見類別的清單:
類別 | 描述 |
---|---|
MongoClient |
此類別提供 Azure Cosmos DB 上 API for MongoDB 層的用戶端邏輯表示法。 用戶端物件會用於設定及執行針對服務的要求。 |
MongoDatabase |
此類別是服務中可能或可能不存在的資料庫參考。 當您嘗試對資料庫執行作業時,資料庫為已驗證或已建立的伺服器端。 |
Collection |
此類別為集合參考,可能尚未存在於伺服器中。 當您嘗試使用集合時,集合為已驗證的伺服器端。 |
下列指南說明如何以上述每個類別來建置應用程式和管理資料。
指南:
另請參閱
下一步
既然您已連線到 API for MongoDB 帳戶,請使用下一個指南來建立和管理資料庫。