CommandLineConfigurationExtensions.AddCommandLine Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
| Nome | Descrizione |
|---|---|
| AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>) |
Aggiunge un oggetto IConfigurationProvider che legge i valori di configurazione dalla riga di comando. |
| AddCommandLine(IConfigurationBuilder, String[]) |
Aggiunge un oggetto CommandLineConfigurationProviderIConfigurationProvider che legge i valori di configurazione dalla riga di comando. |
| AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>) |
Aggiunge un oggetto CommandLineConfigurationProviderIConfigurationProvider che legge i valori di configurazione dalla riga di comando usando i mapping delle opzioni specificati. |
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)
Aggiunge un oggetto IConfigurationProvider che legge i valori di configurazione dalla riga di 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
Parametri
- builder
- IConfigurationBuilder
Oggetto IConfigurationBuilder a cui aggiungere.
- configureSource
- Action<CommandLineConfigurationSource>
Configura l'origine.
Valori restituiti
Si applica a
AddCommandLine(IConfigurationBuilder, String[])
Aggiunge un oggetto CommandLineConfigurationProviderIConfigurationProvider che legge i valori di configurazione dalla riga di 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
Parametri
- configurationBuilder
- IConfigurationBuilder
Oggetto IConfigurationBuilder a cui aggiungere.
- args
- String[]
Argomenti della riga di comando.
Valori restituiti
Esempio
Un'applicazione console semplice con cinque valori.
// 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"]}'");
}
}
}
Commenti
I valori passati nella riga di comando, nella args matrice di stringhe, devono essere un set di chiavi preceduti da due trattini ("--") e quindi valori separati dal segno di uguale ("=") o da uno spazio (" ").
Una barra ("/") può essere usata come prefisso alternativo, con uguale o spazio e quando si usa un segno di uguale il prefisso può essere lasciato fuori del tutto.
Esistono cinque formati alternativi di base per gli argomenti: key1=value1 --key2=value2 /key3=value3 --key4 value4 /key5 value5.
Si applica a
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)
Aggiunge un oggetto CommandLineConfigurationProviderIConfigurationProvider che legge i valori di configurazione dalla riga di comando usando i mapping delle opzioni specificati.
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
Parametri
- configurationBuilder
- IConfigurationBuilder
Oggetto IConfigurationBuilder a cui aggiungere.
- args
- String[]
Argomenti della riga di comando.
- switchMappings
- IDictionary<String,String>
Mapping di commutatori. Dizionario di chiavi short (con prefisso "-") e alias (con prefisso "--"), mappato alla chiave di configurazione (senza prefisso).
Valori restituiti
Esempio
Un'applicazione console semplice con due mapping di cambio alias brevi e quattro definiti.
// 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"]}'");
}
}
}
Commenti
switchMappings consente di usare formati aggiuntivi per chiavi brevi e alias alternative dalla riga di comando. Vedere anche la versione di base di AddCommandLine per i formati standard supportati.
I tasti brevi iniziano con un singolo trattino ("-") e vengono mappati al nome della chiave principale (senza prefisso) e possono essere usati con uguale o spazio. I mapping con trattini singoli devono essere usati per commutatori alternativi più brevi.
Si noti che non è possibile accedere direttamente a un singolo interruttore, ma deve disporre di un mapping switch definito e accessibile usando la chiave completa. Il passaggio di un argomento trattino singolo non definito causerà come FormatException.
Esistono due formati per gli argomenti brevi: -k1=value1 -k2 value2.
Le definizioni di chiave alias iniziano con due trattini ("--") e vengono mappate al nome della chiave principale (senza prefisso) e possono essere usate al posto della chiave normale. Funzionano anche quando viene usato un prefisso barra nella riga di comando , ma non con il formato uguale al prefisso.
Esistono solo quattro formati per gli argomenti con alias: --alt3=value3 /alt4=value4 --alt5 value5 /alt6 value6.