Ejercicio: creación de una aplicación .NET y un SDK de referencia
Como primer paso para crear la aplicación del proyecto, debe crear un proyecto de .NET. Recuerde que el proyecto de .NET debe usar el SDK de Microsoft.Azure.Cosmos para conectarse a la cuenta que ya ha creado. Hay tres requisitos clave en este momento:
- Creación de un proyecto de .NET
- Agregación de una referencia de paquete al SDK
- Conexión mediante las clases de cliente
Después de completar este ejercicio, tendrá una sencilla aplicación .NET que se conecta correctamente a la cuenta de la API de NoSQL, pero que todavía no realiza ninguna operación.
Creación de un proyecto de consola de .NET
La CLI de .NET crea y administra proyectos de .NET dentro de un directorio especificado. Aquí, se usa la CLI para crear una aplicación de consola y agregar una referencia de paquete al SDK.
Cree una nueva aplicación de consola en el directorio actual.
dotnet new console
Sugerencia
Dado que no especificó un nombre de proyecto o un directorio, el comando creará el nuevo proyecto en el directorio actual y asignará el nombre al proyecto para que coincida con el nombre del directorio (inventory).
Agregue una referencia de paquete a la versión 3 de la biblioteca
Microsoft.Azure.Cosmos
de NuGet.dotnet add package Microsoft.Azure.Cosmos --version 3.*
Agregue una referencia de paquete a la versión 1 de la biblioteca
Azure.Identity
de NuGet.dotnet add package Azure.Identity --version 1.*
Compile el proyecto de .NET para asegurarse de que ha configurado correctamente el proyecto.
dotnet build
La salida del comando debe ser similar a este ejemplo:
MSBuild version 17.5.0+6f08c67f3 for .NET Determining projects to restore... All projects are up-to-date for restore. dotnet-env-azure-cosmos-db -> /workspaces/dotnet-env-azure-cosmos-db/bin/Debug/net7.0/dotnet-env-azure-cosmos-db.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:05.96
Conexión con la cuenta
Ahora, el proyecto de .NET debe compilarse y estar listo para agregar su propio código personalizado. Tiene acceso al espacio de nombres Microsoft.Azure.Cosmos y Azure.Identity, incluidas todas las clases necesarias para conectarse a la API de NoSQL. Aquí, se abre el archivo Program.cs y se implementa código para conectarse a la cuenta mediante las clases de cliente del SDK.
Abra el archivo Program.cs en el editor de código.
Elimine todo el código existente en el archivo.
Agregue directivas using para los siguientes espacios de nombres:
using Azure.Identity; using Microsoft.Azure.Cosmos; using Microsoft.Azure.Cosmos.Fluent; using Microsoft.Azure.Cosmos.Linq;
Cree una variable de cadena de tipo denominada
endpoint
. Establezca el valor de la variable en el punto de conexión del documento de la cuenta que registró anteriormente en este módulo.const string endpoint = "<nosql-account-endpoint>";
Sugerencia
Suponiendo que el nombre de la cuenta de Azure Cosmos DB es
mslearn-nosql-000000000
, configuraría el punto de conexión como en este ejemplo:const string endpoint = "https://mslearn-nosql-000000000.documents.azure.com:443/";
Cree una variable de tipo DefaultAzureCredential denominada
credential
.DefaultAzureCredential credential = new();
Cree una nueva instancia de la clase CosmosSerializationOptions denominada serializerOptions. La propiedad PropertyNamingPolicy devuelve un valor
CamelCase
de la enumeración CamelCase.CosmosSerializationOptions serializerOptions = new() { PropertyNamingPolicy = CosmosPropertyNamingPolicy.CamelCase };
Cree una nueva instancia de la clase CosmosClientBuilder pasando la credencial y el punto de conexión al constructor. A continuación, encadene el método fluido WithSerializerOptions(CosmosSerializationOptions) y establezca el parámetro de este método en
serializerOptions
. Encadene el método Build() para crear una instancia de tipo CosmosClient denominadaclient
. Por último, encapsule la creación de la variable de cliente con una instrucción using.using CosmosClient client = new CosmosClientBuilder(endpoint, credential) .WithSerializerOptions(serializerOptions) .Build();
Imprima un mensaje que indique que el cliente está listo.
Console.WriteLine("[Client ready]");
Guarde el archivo Program.cs.
Comprobar el trabajo
La aplicación ya está lista para ejecutarse y conectarse a Azure Cosmos DB for NoSQL. Aquí, se compara el código de la aplicación con el ejemplo. Después, se ejecuta el código para comprobar que la aplicación funciona según lo previsto.
Ejecución de la aplicación .NET en el terminal
dotnet run
Observe la salida de la ejecución de la aplicación. La salida debe coincidir con el texto del ejemplo siguiente.
[Client ready]
Nota
Si compilar o ejecutar la aplicación .NET produce un error, vaya a la pestaña Revisar código para validar que el código coincide con el ejemplo.