CommandLineConfigurationExtensions.AddCommandLine Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>) |
Agrega una instancia de IConfigurationProvider que lee los valores de configuración de la línea de comandos. |
AddCommandLine(IConfigurationBuilder, String[]) |
Agrega una instancia de CommandLineConfigurationProvider que lee los valores de configuración de la línea de comandos. |
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>) |
Agrega una instancia de CommandLineConfigurationProvider que lee valores de configuración de la línea de comandos mediante las asignaciones de modificador especificadas. |
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)
Agrega una instancia de IConfigurationProvider que lee los valores de configuración de la línea de comandos.
public:
[System::Runtime::CompilerServices::Extension]
static Microsoft::Extensions::Configuration::IConfigurationBuilder ^ AddCommandLine(Microsoft::Extensions::Configuration::IConfigurationBuilder ^ builder, Action<Microsoft::Extensions::Configuration::CommandLine::CommandLineConfigurationSource ^> ^ configureSource);
public static Microsoft.Extensions.Configuration.IConfigurationBuilder AddCommandLine (this Microsoft.Extensions.Configuration.IConfigurationBuilder builder, Action<Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationSource>? configureSource);
static member AddCommandLine : Microsoft.Extensions.Configuration.IConfigurationBuilder * Action<Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationSource> -> Microsoft.Extensions.Configuration.IConfigurationBuilder
<Extension()>
Public Function AddCommandLine (builder As IConfigurationBuilder, configureSource As Action(Of CommandLineConfigurationSource)) As IConfigurationBuilder
Parámetros
- builder
- IConfigurationBuilder
El objeto IConfigurationBuilder al que se va a agregar.
- configureSource
- Action<CommandLineConfigurationSource>
Configura el origen.
Devoluciones
El parámetro de cadena de consulta IConfigurationBuilder.
Se aplica a
AddCommandLine(IConfigurationBuilder, String[])
Agrega una instancia de CommandLineConfigurationProvider que lee los valores de configuración de la línea de comandos.
public:
[System::Runtime::CompilerServices::Extension]
static Microsoft::Extensions::Configuration::IConfigurationBuilder ^ AddCommandLine(Microsoft::Extensions::Configuration::IConfigurationBuilder ^ configurationBuilder, cli::array <System::String ^> ^ args);
public static Microsoft.Extensions.Configuration.IConfigurationBuilder AddCommandLine (this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationBuilder, string[] args);
static member AddCommandLine : Microsoft.Extensions.Configuration.IConfigurationBuilder * string[] -> Microsoft.Extensions.Configuration.IConfigurationBuilder
<Extension()>
Public Function AddCommandLine (configurationBuilder As IConfigurationBuilder, args As String()) As IConfigurationBuilder
Parámetros
- configurationBuilder
- IConfigurationBuilder
El objeto IConfigurationBuilder al que se va a agregar.
- args
- String[]
Los argumentos de línea de comandos.
Devoluciones
El parámetro de cadena de consulta IConfigurationBuilder.
Ejemplos
Una aplicación de consola simple que tiene cinco valores.
// dotnet run key1=value1 --key2=value2 /key3=value3 --key4 value4 /key5 value5
using Microsoft.Extensions.Configuration;
using System;
namespace CommandLineSample
{
public class Program
{
public static void Main(string[] args)
{
var builder = new ConfigurationBuilder();
builder.AddCommandLine(args);
var config = builder.Build();
Console.WriteLine($"Key1: '{config["Key1"]}'");
Console.WriteLine($"Key2: '{config["Key2"]}'");
Console.WriteLine($"Key3: '{config["Key3"]}'");
Console.WriteLine($"Key4: '{config["Key4"]}'");
Console.WriteLine($"Key5: '{config["Key5"]}'");
}
}
}
Comentarios
Los valores pasados en la línea de comandos, en la args
matriz de cadenas, deben ser un conjunto de claves con el prefijo de dos guiones ("--") y, a continuación, los valores, separados por el signo igual ("=") o un espacio (" "). Se puede usar una barra diagonal ("/") como prefijo alternativo, con igual o espacio. Cuando se usa un signo igual, se puede dejar el prefijo por completo.
Hay cinco formatos alternativos básicos para los argumentos:
key1=value1
--key2=value2
/key3=value3
--key4 value4
/key5 value5
Se aplica a
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)
Agrega una instancia de CommandLineConfigurationProvider que lee valores de configuración de la línea de comandos mediante las asignaciones de modificador especificadas.
public:
[System::Runtime::CompilerServices::Extension]
static Microsoft::Extensions::Configuration::IConfigurationBuilder ^ AddCommandLine(Microsoft::Extensions::Configuration::IConfigurationBuilder ^ configurationBuilder, cli::array <System::String ^> ^ args, System::Collections::Generic::IDictionary<System::String ^, System::String ^> ^ switchMappings);
public static Microsoft.Extensions.Configuration.IConfigurationBuilder AddCommandLine (this Microsoft.Extensions.Configuration.IConfigurationBuilder configurationBuilder, string[] args, System.Collections.Generic.IDictionary<string,string>? switchMappings);
static member AddCommandLine : Microsoft.Extensions.Configuration.IConfigurationBuilder * string[] * System.Collections.Generic.IDictionary<string, string> -> Microsoft.Extensions.Configuration.IConfigurationBuilder
<Extension()>
Public Function AddCommandLine (configurationBuilder As IConfigurationBuilder, args As String(), switchMappings As IDictionary(Of String, String)) As IConfigurationBuilder
Parámetros
- configurationBuilder
- IConfigurationBuilder
El objeto IConfigurationBuilder al que se va a agregar.
- args
- String[]
Los argumentos de línea de comandos.
- switchMappings
- IDictionary<String,String>
Las asignaciones de modificador. Un diccionario de claves breves (con prefijo "-") y de alias (con el prefijo "--") asignado a la clave de configuración (sin prefijo).
Devoluciones
El parámetro de cadena de consulta IConfigurationBuilder.
Ejemplos
Una aplicación de consola sencilla que tiene dos asignaciones de modificadores de alias y cuatro cortas definidas.
// dotnet run k1=value1 -k2 value2 --alt3=value2 /alt4=value3 --alt5 value5 /alt6 value6
using Microsoft.Extensions.Configuration;
using System;
using System.Collections.Generic;
namespace CommandLineSample
{
public class Program
{
public static void Main(string[] args)
{
var switchMappings = new Dictionary<string, string>()
{
{ "-k1", "key1" },
{ "-k2", "key2" },
{ "--alt3", "key3" },
{ "--alt4", "key4" },
{ "--alt5", "key5" },
{ "--alt6", "key6" },
};
var builder = new ConfigurationBuilder();
builder.AddCommandLine(args, switchMappings);
var config = builder.Build();
Console.WriteLine($"Key1: '{config["Key1"]}'");
Console.WriteLine($"Key2: '{config["Key2"]}'");
Console.WriteLine($"Key3: '{config["Key3"]}'");
Console.WriteLine($"Key4: '{config["Key4"]}'");
Console.WriteLine($"Key5: '{config["Key5"]}'");
Console.WriteLine($"Key6: '{config["Key6"]}'");
}
}
}
Comentarios
Permite switchMappings
usar formatos adicionales para claves de alias y abreviadas alternativas desde la línea de comandos. Para conocer los formatos estándar admitidos, consulte la versión básica de AddCommandLine
.
Las teclas cortas comienzan con un solo guión ("-") y se asignan al nombre de clave principal (sin prefijo) y se pueden usar con iguales o espacios. Las asignaciones de un solo guión están diseñadas para usarse para conmutadores alternativos más cortos. No se puede acceder directamente a un conmutador de guion único, pero debe tener una asignación de conmutador definida y a la que se tenga acceso mediante la clave completa. Si se pasa un argumento de un guión único sin definir, se producirá una FormatExceptionexcepción .
Hay dos formatos para argumentos cortos: -k1=value1
y -k2 value2
.
Las definiciones de clave de alias comienzan con dos guiones ("--") y se asignan al nombre de clave principal (sin prefijo) y se pueden usar en lugar de la clave normal. También funcionan cuando se usa un prefijo de barra diagonal en la línea de comandos (pero no con el formato sin prefijo igual).
Solo hay cuatro formatos para los argumentos con alias:
--alt3=value3
/alt4=value4
--alt5 value5
/alt6 value6