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
- Una suscripción de Azure.
- Un almacén de configuración existente.
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
- Recuperar un valor de configuración
- Actualizar una configuración existente
- Eliminar un valor de configuración
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:
- Hola mundo: cree y elimine una configuración.
- Hola mundo asincrónico con etiquetas: cree, actualice y elimine de forma asincrónica las opciones de configuración con etiquetas.
- Establecer una configuración de solo lectura: haga que una configuración sea de solo lectura y, a continuación, vuelva a un estado de lectura y escritura.
- Leer el historial de revisiones: lea el historial de revisiones de una configuración que se ha cambiado.
- Obtener una configuración si se cambia: guarde el ancho de banda mediante una solicitud condicional para recuperar una configuración solo si es diferente de la copia local.
- Actualizar una configuración si no ha cambiado: evite las actualizaciones perdidas mediante la simultaneidad optimista para actualizar una configuración solo si las actualizaciones locales se aplicaron a la misma versión que el recurso en el almacén de configuración.
- Crear un cliente ficticio: simulación de un cliente para las pruebas.
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.