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.
Tento článek obsahuje kroky potřebné k povolení práce s databází Cosmos DB z aplikace Windows. Obsahuje také malý fragment kódu, který ukazuje, jak můžete pracovat s databází v kódu.
Nastavte své řešení
Tento příklad lze použít s libovolným projektem WPF, Windows Forms a WinUI pro připojení aplikace pro Windows k databázi Cosmos DB. Pomocí těchto kroků nainstalujte balíček a vyzkoušejte ukázkový kód pro některé základní úlohy.
- Otevřete konzoli Package Manager Console (Zobrazení -> jiné okna -> Konzole Správce Balíčků). Pomocí příkazu
Install-Package Microsoft.Azure.Cosmosnainstalujte balíček NuGet pro Azure Cosmos DB pro NoSQL klientskou knihovnu pro .NET. To vám umožní programově přistupovat k databázím Cosmos DB. - Sestavte projekt a ujistěte se, že sestavení proběhlo úspěšně bez chyb.
V dalším kroku budete muset v Azure vytvořit instanci Cosmos DB. Můžete to provést podle kroků v Vytvoření účtu databáze NoSQL v Azure Cosmos DB.
Práce se službou Cosmos DB pomocí ukázkového kódu
Následující ukázkový kód získá kontejner z instance Cosmos DB v Azure a pak do tohoto kontejneru přidá novou položku. Potom pomocí rozhraní API pro dotazy služby Cosmos DB NoSQL načte položku z kontejneru a vypíše stav odpovědi. Všimněte si, že koncový bod, ověřovací klíč a název databáze bude potřeba přizpůsobit na základě instance Cosmos DB, kterou jste vytvořili v předchozí části.
Poznámka:
Úplný příklad, včetně informací o požadovaném nastavení a konfiguraci služby Cosmos DB, najdete v tématu Develop konzolovou aplikaci .NET s Azure Cosmos DB pro NoSQL.
using Microsoft.Azure.Cosmos;
...
public async Task CosmosSample(string endpoint, string authKey)
{
// CONNECT
var client = new CosmosClient(
accountEndpoint: endpoint,
authKeyOrResourceToken: authKey
);
Database database = client.GetDatabase("sample_customers");
ContainerProperties properties = new(
id: "customers",
partitionKeyPath: "/location"
);
Container container = await database.CreateContainerIfNotExistsAsync(properties);
// WRITE DATA
string customerId = "1234";
string state = "WA";
var customer = new
{
id = customerId,
name = "John Doe",
location = state
};
var createResponse = await container.CreateItemAsync(customer);
Console.WriteLine($"[Status code: {createResponse.StatusCode}]\t{customerId}");
// READ DATA
string sql = "SELECT * FROM customers c WHERE c.id = @id";
var query = new QueryDefinition(
query: sql
).WithParameter("@id", customerId);
using var feed = container.GetItemQueryIterator<dynamic>(queryDefinition: query);
var queryResponse = await feed.ReadNextAsync();
Console.WriteLine($"[Status code: {queryResponse.StatusCode}]\t{customerId}");
}
Související obsah
Windows developer