Utiliser une base de données Cosmos DB à partir d’une application Windows
Cet article contient les étapes nécessaires pour pouvoir utiliser une base de données Cosmos DB à partir d’une application Windows. Il contient également un petit extrait de code montrant comment vous pouvez interagir avec la base de données dans du code.
Configurer votre solution
Cet exemple peut être utilisé avec n’importe quel projet WPF, Windows Forms, WinUI 3 et UWP pour connecter votre application Windows à une base de données Cosmos DB. Suivez ces étapes pour installer le package et tester un exemple de code sur des tâches de base.
- Ouvrez la Console du Gestionnaire de package (Affichage -> Autres fenêtres -> Console du Gestionnaire de package). Utilisez la commande
Install-Package Microsoft.Azure.Cosmos
pour installer le package NuGet pour la bibliothèque de client Azure Cosmos DB for NoSQL pour .NET. Cette commande vous permet d’accéder par programmation à des bases de données Cosmos DB. - Générez votre projet et vérifiez que la build n’a pas rencontré d’erreurs.
Ensuite, vous avez besoin de créer une instance Cosmos DB dans Azure. Pour cela, suivez les étapes décrites dans Créer un compte de base de données NoSQL dans Azure Cosmos DB.
Utiliser Cosmos DB avec un exemple de code
L’exemple de code suivant obtient un conteneur auprès d’une instance Cosmos DB dans Azure, puis ajoute un nouvel élément à ce conteneur. Ensuite, il utilise l’API de requête NoSQL de Cosmos DB pour récupérer l’élément auprès du conteneur et générer l’état de la réponse. Notez que le point de terminaison, la clé d’authentification et le nom de la base de données sont à personnaliser en fonction de l’instance Cosmos DB que vous avez créée dans la section précédente.
Note
Pour obtenir un exemple complet, notamment des informations sur l’installation et la configuration nécessaires de Cosmos DB, consultez Développer une application console .NET avec Azure Cosmos DB for 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}");
}
Contenu connexe
Windows developer