Sdílet prostřednictvím


CommandLineConfigurationExtensions.AddCommandLine Metoda

Definice

Přetížení

AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Přidá objekt IConfigurationProvider , který čte konfigurační hodnoty z příkazového řádku.

AddCommandLine(IConfigurationBuilder, String[])

Přidá hodnotu CommandLineConfigurationProvider , která čte konfigurační hodnoty z příkazového řádku.

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

Přidá hodnotu CommandLineConfigurationProvider , která čte konfigurační hodnoty z příkazového řádku pomocí zadaného mapování přepínačů.

AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs

Přidá objekt IConfigurationProvider , který čte konfigurační hodnoty z příkazového řádku.

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

Parametry

builder
IConfigurationBuilder

Chcete-li IConfigurationBuilder přidat do.

configureSource
Action<CommandLineConfigurationSource>

Nakonfiguruje zdroj.

Návraty

Hodnota IConfigurationBuilder

Platí pro

AddCommandLine(IConfigurationBuilder, String[])

Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs

Přidá hodnotu CommandLineConfigurationProvider , která čte konfigurační hodnoty z příkazového řádku.

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

Parametry

configurationBuilder
IConfigurationBuilder

Chcete-li IConfigurationBuilder přidat do.

args
String[]

Příkazový řádek args.

Návraty

Hodnota IConfigurationBuilder

Příklady

Jednoduchá konzolová aplikace, která má pět hodnot.

// 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"]}'");
       }
   }
}

Poznámky

Hodnoty předané na příkazovém řádku v args poli řetězců by měly být množinou klíčů s předponou dvou pomlček ("--") a potom hodnotami oddělenými znaménkem rovná se ("=") nebo mezerou (" "). Lomítko ("/") lze použít jako alternativní předponu, která se rovná nebo mezera. Při použití znaménka rovná se může předpona úplně vynechat.

Argumenty mají pět základních alternativních formátů:

key1=value1
--key2=value2
/key3=value3
--key4 value4
/key5 value5

Platí pro

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

Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs
Zdroj:
CommandLineConfigurationExtensions.cs

Přidá hodnotu CommandLineConfigurationProvider , která čte konfigurační hodnoty z příkazového řádku pomocí zadaného mapování přepínačů.

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

Parametry

configurationBuilder
IConfigurationBuilder

Chcete-li IConfigurationBuilder přidat do.

args
String[]

Příkazový řádek args.

switchMappings
IDictionary<String,String>

Mapování přepínačů Slovník krátkých (s předponou "-") a klíčů aliasu (s předponou "--") namapovaný na konfigurační klíč (bez předpony).

Návraty

Hodnota IConfigurationBuilder

Příklady

Jednoduchá konzolová aplikace, která má definované dvě krátká a čtyři mapování přepínačů aliasů.

// 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"]}'");
       }
   }
}

Poznámky

Umožňuje switchMappings použití dalších formátů pro alternativní krátké klávesy a klávesy aliasu z příkazového řádku. Informace o podporovaných standardních formátech najdete v základní verzi nástroje AddCommandLine.

Krátké klávesy začínají jednou pomlčkou ("-") a jsou namapované na název hlavního klíče (bez předpony) a lze je použít buď se rovná, nebo mezera. Jednoúčelová mapování jsou určena pro kratší alternativní přepínače. K jednomu pomlčkovém přepínači není možné přistupovat přímo, ale musí mít mapování přepínačů definované a přístupné pomocí úplného klíče. Předání nedefinovaného argumentu s jednou pomlčkou způsobí FormatException.

Pro krátké argumenty existují dva formáty: -k1=value1 a -k2 value2.

Definice klíčů aliasu začínají dvěma pomlčkami (--) a mapují se na název hlavního klíče (bez předpony) a dají se použít místo normálního klíče. Fungují také v případě, že se na příkazovém řádku použije předpona lomítka (ale ne bez předpony se rovná formátu).

Pro argumenty s aliasy existují pouze čtyři formáty:

--alt3=value3
/alt4=value4
--alt5 value5
/alt6 value6

Platí pro