CommandLineConfigurationExtensions.AddCommandLine Método

Definição

Sobrecargas

Name Description
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Adiciona um IConfigurationProvider que lê valores de configuração da linha de comandos.

AddCommandLine(IConfigurationBuilder, String[])

Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comandos.

AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)

Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comandos usando os mapeamentos de switch especificados.

AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs

Adiciona um IConfigurationProvider que lê valores de configuração da linha 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

O IConfigurationBuilder que é para acrescentar.

configureSource
Action<CommandLineConfigurationSource>

Configura a fonte.

Devoluções

O IConfigurationBuilder.

Aplica-se a

AddCommandLine(IConfigurationBuilder, String[])

Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs

Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha 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

O IConfigurationBuilder que é para acrescentar.

args
String[]

Os args da linha de comandos.

Devoluções

O IConfigurationBuilder.

Exemplos

Uma simples aplicação de consola 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"]}'");
       }
   }
}

Observações

Os valores passados na linha de comandos, na args matriz de cadeias, devem ser um conjunto de teclas prefixadas com dois traços ("--") e depois valores, separados pelo sinal de igual ("=") ou por um espaço (" ").

Uma barra para a frente ("/") pode ser usada como prefixo alternativo, com iguais ou espaço, e ao usar um sinal de igual, o prefixo pode ser completamente omitido.

Existem 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>)

Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs
Origem:
CommandLineConfigurationExtensions.cs

Adiciona um CommandLineConfigurationProviderIConfigurationProvider que lê valores de configuração da linha de comandos usando os mapeamentos de switch 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 que é para acrescentar.

args
String[]

Os args da linha de comandos.

switchMappings
IDictionary<String,String>

Os mapeamentos dos interruptores. Um dicionário de chaves curtas (com prefixo "-") e alias (com prefixo "--"), mapeadas para a chave de configuração (sem prefixo).

Devoluções

O IConfigurationBuilder.

Exemplos

Uma aplicação simples de consola que tem dois mapeamentos curtos e quatro de alias 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"]}'");
       }
   }
}

Observações

Permite switchMappings o uso de formatos adicionais para teclas alternativas de curto e alias a partir da linha de comandos. Consulte também a versão básica para AddCommandLine os formatos padrão suportados.

As teclas curtas começam com um único traço ("-") e são mapeadas para o nome principal da chave (sem prefixo), podendo ser usadas com iguais ou espaço. Os mapeamentos de um único traço destinam-se a ser usados em interruptores alternativos mais curtos.

Note-se que um único interruptor de traço não pode ser acedido diretamente, mas deve ter um mapeamento do interruptor definido e acedido usando a chave completa. Passar um argumento de traço único indefinido causará como FormatException.

Existem dois formatos para argumentos curtos: -k1=value1 -k2 value2.

As definições de chaves de alias começam com dois traços ("--") e são mapeadas para o nome principal da chave (sem prefixo), podendo ser usadas em vez da chave normal. Também funcionam quando um prefixo de barra para frente é usado na linha de comandos (mas não com o formato sem prefixo igual a isso).

Existem apenas quatro formatos para argumentos aliasados: --alt3=value3 /alt4=value4 --alt5 value5 /alt6 value6.

Aplica-se a