Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln innehåller de steg som krävs för att aktivera arbete med en Cosmos DB-databas från en Windows app. Den innehåller också ett litet kodfragment som visar hur du kan interagera med databasen i koden.
Konfigurera din lösning
Det här exemplet kan användas med valfritt WPF-, Windows Forms- och WinUI-projekt för att ansluta din Windows-app till en Cosmos DB-databas. Följ de här stegen för att installera paketet och prova exempelkod för vissa grundläggande uppgifter.
- Öppna konsolen Package Manager (Visa -> Annan Windows -> Package Manager-konsolen). Använd kommandot
Install-Package Microsoft.Azure.Cosmosför att installera NuGet-paketet för Azure Cosmos DB för NoSQL klientbibliotek för .NET. På så sätt kan du programmatiskt komma åt Cosmos DB-databaser. - Skapa projektet och se till att bygget lyckades utan fel.
Därefter måste du skapa en Cosmos DB-instans i Azure. Du kan göra detta genom att följa stegen i Skapa ett NoSQL databaskonto i Azure Cosmos DB.
Arbeta med Cosmos DB med hjälp av exempelkod
Följande exempelkod hämtar en container från en Cosmos DB-instans i Azure och lägger sedan till ett nytt objekt i containern. Sedan använder den Cosmos DB:s NoSQL fråge-API för att hämta objektet från containern och mata ut svarsstatusen. Observera att slutpunkten, autentiseringsnyckeln och databasnamnet måste anpassas baserat på den Cosmos DB-instans som du skapade i föregående avsnitt.
Anmärkning
Ett fullständigt exempel, inklusive information om nödvändig installation och konfiguration av Cosmos DB, finns i Utveckla ett .NET-konsolprogram med Azure Cosmos DB för 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}");
}
Relaterat innehåll
Windows developer