CommandLineConfigurationExtensions.AddCommandLine Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
| Nome | Description |
|---|---|
| AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>) |
Adiciona um IConfigurationProvider que lê valores de configuração da linha de comando. |
| AddCommandLine(IConfigurationBuilder, String[]) |
Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comando. |
| AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>) |
Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comando usando os mapeamentos de comutador especificados. |
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)
Adiciona um IConfigurationProvider que lê valores de configuração da linha de comando.
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
O IConfigurationBuilder para adicionar.
- configureSource
- Action<CommandLineConfigurationSource>
Configura a origem.
Retornos
Aplica-se a
AddCommandLine(IConfigurationBuilder, String[])
Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comando.
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
O IConfigurationBuilder para adicionar.
- args
- String[]
Os args de linha de comando.
Retornos
Exemplos
Um aplicativo de console simples que tem 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"]}'");
}
}
}
Comentários
Os valores passados na linha de comando, na matriz de args cadeia de caracteres, devem ser um conjunto de chaves prefixadas com dois traços ("--") e, em seguida, valores, separados pelo sinal de igual ("=") ou um espaço (" ").
Uma barra ("/") pode ser usada como um prefixo alternativo, com igual ou espaço, e ao usar um sinal de igual, o prefixo pode ser deixado de fora completamente.
Há cinco formatos alternativos básicos para argumentos: key1=value1 --key2=value2 /key3=value3 --key4 value4 /key5 value5.
Aplica-se a
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)
Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comando usando os mapeamentos de comutador especificados.
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
O IConfigurationBuilder para adicionar.
- args
- String[]
Os args de linha de comando.
- switchMappings
- IDictionary<String,String>
Os mapeamentos de comutador. Um dicionário curto (com prefixo "-") e chaves de alias (com prefixo "--"), mapeado para a chave de configuração (sem prefixo).
Retornos
Exemplos
Um aplicativo de console simples que tem dois mapeamentos de comutador de alias curtos e quatro definidos.
// 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"]}'");
}
}
}
Comentários
Permite switchMappings que formatos adicionais para chaves de alias e curtas alternativas sejam usados na linha de comando. Consulte também a versão básica dos AddCommandLine formatos padrão com suporte.
As teclas curtas começam com um único traço ("-") e são mapeadas para o nome da chave principal (sem prefixo) e podem ser usadas com igual ou espaço. Os mapeamentos de traço único devem ser usados para comutadores alternativos mais curtos.
Observe que um único comutador de traço não pode ser acessado diretamente, mas deve ter um mapeamento de comutador definido e acessado usando a chave completa. Passar um argumento de traço único indefinido causará como FormatException.
Há dois formatos para argumentos curtos: -k1=value1 -k2 value2.
As definições de chave de alias começam com dois traços ("--") e são mapeadas para o nome da chave principal (sem prefixo) e podem ser usadas no lugar da chave normal. Eles também funcionam quando um prefixo de barra para frente é usado na linha de comando (mas não com o formato sem prefixo igual).
Há apenas quatro formatos para argumentos de alias: --alt3=value3 /alt4=value4 --alt5 value5 /alt6 value6.