Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
APPLIES TO: NoSQL
V tomto článku se dozvíte, jak se připojit ke službě Azure Cosmos DB for NoSQL pomocí sady .NET SDK. Po připojení můžete provádět operace s databázemi, kontejnery a položkami.
Package (NuGet) | API reference | Library source code | Give Feedback
Požadavky
- Účet Azure s aktivním předplatným. Vytvoření účtu zdarma
- Azure Cosmos DB for NoSQL account. Vytvořte rozhraní API pro účet NoSQL.
- .NET 6.0 nebo novější
- Rozhraní příkazového řádku Azure (CLI) nebo Azure PowerShell
Nastavení projektu
Pomocí příkazu se šablonou dotnet new vytvořte novou aplikaci .NET.
dotnet new console
Importujte balíček NuGet Microsoft.Azure.Cosmos pomocí dotnet add package příkazu.
dotnet add package Microsoft.Azure.Cosmos
Sestavte projekt pomocí dotnet build příkazu.
dotnet build
Připojení ke službě Azure Cosmos DB for NoSQL
Pokud se chcete připojit k rozhraní API pro NoSQL služby Azure Cosmos DB, vytvořte instanci CosmosClient třídy. Tato třída je výchozím bodem pro provádění všech operací s databázemi.
To connect to your API for NoSQL account using Microsoft Entra, use a security principal. Přesný typ hlavního objektu bude záviset na místě, kde hostujete kód aplikace. Následující tabulka slouží jako stručná referenční příručka.
| Kde aplikace běží | Security principal |
|---|---|
| Místní počítač (vývoj a testování) | Identita uživatele nebo zástupce služby |
| Azure | Spravovaná identita |
| Servery nebo klienti mimo Azure | Service principal |
Import Azure.Identity
Balíček NuGet Azure.Identity obsahuje základní funkce ověřování, které se sdílí mezi všemi knihovnami sady Azure SDK.
Importujte balíček NuGet Azure.Identity pomocí dotnet add package příkazu.
dotnet add package Azure.Identity
Znovu sestavte projekt pomocí dotnet build příkazu.
dotnet build
In your code editor, add using directives for Azure.Core and Azure.Identity namespaces.
using Azure.Core;
using Azure.Identity;
Vytvoření CosmosClient s výchozí implementací přihlašovacích údajů
Pokud testujete na místním počítači nebo vaše aplikace bude běžet na službách Azure s přímou podporou spravovaných identit, získejte token OAuth vytvořením DefaultAzureCredential instance.
V tomto příkladu jsme instanci uložili do proměnné typu TokenCredential , protože jde o obecnější typ, který je opakovaně použitelný napříč sadami SDK.
// Credential class for testing on a local machine or Azure services
TokenCredential credential = new DefaultAzureCredential();
Vytvořte novou instanci třídy CosmosClient s COSMOS_ENDPOINT proměnnou prostředí a tokenCredential objekt jako parametry.
// New instance of CosmosClient class using a connection string
using CosmosClient client = new(
accountEndpoint: Environment.GetEnvironmentVariable("COSMOS_ENDPOINT")!,
tokenCredential: credential
);
Sestavení aplikace
Při vytváření aplikace bude váš kód primárně pracovat se čtyřmi typy prostředků:
The API for NoSQL account, which is the unique top-level namespace for your Azure Cosmos DB data.
Databáze, které uspořádají kontejnery ve vašem účtu.
Kontejnery, které obsahují sadu jednotlivých položek v databázi.
Položky, které představují dokument JSON ve vašem kontejneru.
Na následujícím diagramu jsou vztahy těchto prostředků.
Hierarchický diagram znázorňující účet služby Azure Cosmos DB v horní části The account has two child database nodes. Jeden z databázových uzlů zahrnuje dva podřízené uzly typu kontejneru. The other database node includes a single child container node. That single container node has three child item nodes.
Každý typ prostředku je reprezentován jednou nebo více přidruženými třídami .NET. Tady je seznam nejběžnějších tříd:
| Třída | Popis |
|---|---|
CosmosClient |
Tato třída poskytuje logickou reprezentaci na straně klienta pro službu Azure Cosmos DB. Objekt klienta slouží ke konfiguraci a spouštění požadavků na službu. |
Database |
Tato třída je odkazem na databázi, která může nebo nemusí existovat ve službě ještě. Databáze je ověřena na straně serveru, když se pokusíte o přístup k databázi nebo provedete operaci s ní. |
Container |
Tato třída je odkazem na kontejner, který ještě nemusí ve službě existovat. Kontejner se ověří na straně serveru, když se s ním pokusíte pracovat. |
Následující příručky vám ukážou, jak pomocí každé z těchto tříd sestavit aplikaci.
| Průvodce | Popis |
|---|---|
| Vytvoření databáze | Vytvoření databází |
| Vytvoření kontejneru | Vytvořte kontejnery |
| Přečtěte si položku | Point read a specific item |
| Položky dotazu | Dotazování na více položek |