Azure DocumentDB è il database NoSQL fornito dalla piattaforma Microsoft Azure. In modo molto simile ad altri database, permette la memorizzazione di documenti serializzati in JSON. Ogni documento, ma in generale ogni risorsa, come collezioni, utenti e database, è identificato da un ID univoco autogenerato, che combinato con gli altri, permette di navigare all'interno e raggiungere una risorsa. Per esempio il percorso dbs/databaseId/colls/collectionId/docs/documentId permette di raggiungere un documento di una specifica collezione di uno specifico database.
Quando ci troviamo a dover operare su una risorsa, quindi, dobbiamo ricostruire questo percorso. Per farlo viene in aiuto il pacchetto NuGet Microsoft.Azure.Documents.Client che contiene la classe di nome UriFactory. Essa dispone di vari metodi di nome CreateDocumentUri, CreateCollectionUri e così via che permettono di generare l'indirizzo senza errori. Inoltre, recentemente è stata introdotta la possibilità di utilizzare i nomi da noi dati alle risorse, invece dei nomi univoci autogenerati da Azure, rendendo più facile la configurazione dell'ambiente e il recupero delle informazioni.
Lo script seguente mostra quindi come generare il percorso e leggere un documento.
// Crea l'indirizzo Uri docUri = UriFactory.CreateDocumentUri("MyDb", "MyCollection", "MyDocId"); // Legge il documento await client.ReadDocumentAsync(docUri);
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire progetti NPM in .NET Aspire
Applicare un filtro per recuperare alcune issue di GitHub
Configurare e gestire sidecar container in Azure App Service
Ottenere un token di accesso per una GitHub App
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Configurare automaticamente un webhook in Azure DevOps
Creare una libreria CSS universale: Immagini
Ricevere notifiche sui test con Azure Load Testing
Fissare una versione dell'agent nelle pipeline di Azure DevOps
Gestione CSS in Blazor con .NET 9