Azure App Configuration biblioteca cliente para .NET: versión 1.2.1

Azure App Configuration es un servicio administrado que ayuda a los desarrolladores a centralizar la configuración de sus aplicaciones y características de forma sencilla y segura.

Use la biblioteca cliente para App Configuration para:

Código | fuentePaquete (NuGet) | Documentación | de referencia de APIDocumentación | del productoMuestras

Introducción

Instalar el paquete

Instale la biblioteca cliente de Azure App Configuration para .NET con NuGet:

dotnet add package Azure.Data.AppConfiguration

Requisitos previos

Si necesita crear un almacén de configuración, puede usar Azure Portal o la CLI de Azure.

Puede usar la CLI de Azure para crear el Almacén de configuración con el siguiente comando:

az appconfig create --name <config-store-name> --resource-group <resource-group-name> --location eastus

Autenticar el cliente

Para interactuar con el servicio App Configuration, deberá crear una instancia de la clase Configuration Client. Para que esto sea posible, necesitará la cadena de conexión del Almacén de configuración.

Obtener credenciales

Use el fragmento de código de la CLI de Azure siguiente para obtener la cadena de conexión del Almacén de configuración.

az appconfig credential list --name <config-store-name>

Como alternativa, obtenga la cadena de conexión de Azure Portal.

Creación de ConfigurationClient

Una vez que tenga el valor de la cadena de conexión, puede crear ConfigurationClient:

string connectionString = "<connection_string>";
var client = new ConfigurationClient(connectionString);

Creación de ConfigurationClient con credenciales de Azure Active Directory

La autenticación de clave de suscripción de cliente se usa en la mayoría de los ejemplos de esta guía de introducción, pero también puede autenticarse con Azure Active Directory mediante la biblioteca de identidades de Azure. Para usar el proveedor DefaultAzureCredential que se muestra a continuación u otros proveedores de credenciales proporcionados con el SDK de Azure, instale el paquete Azure.Identity:

dotnet add package Azure.Identity

También tendrá que registrar una nueva aplicación de AAD y conceder acceso al Almacén de configuración asignando el "App Configuration Data Reader" rol o "App Configuration Data Owner" a la entidad de servicio.

Establezca los valores del identificador de cliente, el identificador de inquilino y el secreto de cliente de la aplicación de AAD como variables de entorno: AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET.

string endpoint = "<endpoint>";
var client = new ConfigurationClient(new Uri(endpoint), new DefaultAzureCredential());

Conceptos clave

Opción de configuración

Un valor de configuración es el recurso fundamental dentro de un almacén de configuración. En su forma más sencilla, es una clave y un valor. Sin embargo, hay propiedades adicionales, como el tipo de contenido modificable y los campos de etiquetas que permiten interpretar o asociar el valor de maneras diferentes.

La propiedad Label de un valor de configuración proporciona una manera de separar las opciones de configuración en diferentes dimensiones. Estas dimensiones se definen por el usuario y pueden adoptar cualquier forma. Algunos ejemplos comunes de dimensiones que se usarán para una etiqueta incluyen regiones, versiones semánticas o entornos. Muchas aplicaciones tienen un conjunto necesario de claves de configuración que tienen valores diferentes, ya que la aplicación existe en diferentes dimensiones.

Por ejemplo, MaxRequests puede ser 100 en "NorthAmerica" y 200 en "WestEurope". Al crear una configuración denominada MaxRequests con una etiqueta de "NorthAmerica" y otra, solo con un valor diferente, con una etiqueta "WestEurope", una aplicación puede recuperar sin problemas los valores de configuración a medida que se ejecuta en estas dos dimensiones.

Seguridad para subprocesos

Garantizamos que todos los métodos de instancia de cliente sean seguros para subprocesos e independientes entre sí (guía). Esto garantiza que la recomendación de reutilizar instancias de cliente siempre es segura, incluso entre subprocesos.

Conceptos adicionales

Opciones | de clienteAcceso a la respuesta | Operaciones | de larga duraciónControl de errores | Diagnóstico | Burla | Duración del cliente

Ejemplos

En las secciones siguientes se proporcionan varios fragmentos de código que abarcan algunas de las tareas más comunes de Configuration Service. Tenga en cuenta que hay métodos sincronizados y asincrónicos disponibles para ambos.

Crear una configuración

Cree un valor de configuración que se almacenará en el almacén de configuración. Hay dos maneras de almacenar una configuración:

  • AddConfigurationSetting crea una configuración solo si la configuración aún no existe en el almacén.
  • SetConfigurationSetting crea una configuración si no existe o invalida una configuración existente.
string connectionString = "<connection_string>";
var client = new ConfigurationClient(connectionString);
var settingToCreate = new ConfigurationSetting("some_key", "some_value");
ConfigurationSetting setting = client.SetConfigurationSetting(settingToCreate);

Recuperar un valor de configuración

Recupere una configuración almacenada anteriormente llamando a GetConfigurationSetting. En este fragmento de código se supone que el valor "some_key" existe en el almacén de configuración.

string connectionString = "<connection_string>";
var client = new ConfigurationClient(connectionString);
ConfigurationSetting setting = client.GetConfigurationSetting("some_key");

Actualizar una configuración existente

Actualice una configuración de configuración existente llamando a SetConfigurationSetting. En este fragmento de código se supone que el valor "some_key" existe en el almacén de configuración.

string connectionString = "<connection_string>";
var client = new ConfigurationClient(connectionString);
ConfigurationSetting setting = client.SetConfigurationSetting("some_key", "new_value");

Eliminar un valor de configuración

Elimine un valor de configuración existente llamando a DeleteConfigurationSetting. En este fragmento de código se supone que el valor "some_key" existe en el almacén de configuración.

string connectionString = "<connection_string>";
var client = new ConfigurationClient(connectionString);
client.DeleteConfigurationSetting("some_key");

Solución de problemas

Consulte nuestra guía de solución de problemas para obtener más información sobre cómo diagnosticar varios escenarios de error.

Pasos siguientes

Más código de ejemplo

Hay varios ejemplos de biblioteca cliente App Configuration disponibles en este repositorio de GitHub. Aquí se incluyen:

Para obtener más información, consulte el archivo Léame de ejemplos.

Contribuciones

Consulte la App Configuration CONTRIBUTING.md para obtener más información sobre la compilación, las pruebas y la contribución a esta biblioteca.

Este proyecto agradece las contribuciones y sugerencias. La mayoría de las contribuciones requieren que acepte un Contrato de licencia para el colaborador (CLA) que declara que tiene el derecho a concedernos y nos concede los derechos para usar su contribución. Para más información, visite cla.microsoft.com.

Cuando se envía una solicitud de incorporación de cambios, un bot de CLA determinará de forma automática si tiene que aportar un CLA y completar la PR adecuadamente (por ejemplo, la etiqueta, el comentario). Solo siga las instrucciones que le dará el bot. Solo será necesario que lo haga una vez en todos los repositorios con nuestro CLA.

Este proyecto ha adoptado el Código de conducta de Microsoft Open Source. Para más información, consulte las preguntas más frecuentes del código de conducta o póngase en contacto con opencode@microsoft.com si tiene cualquier otra pregunta o comentario.

Impresiones