CommandLineConfigurationExtensions.AddCommandLine Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Överlagringar
| Name | Description |
|---|---|
| AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>) |
Lägger till ett IConfigurationProvider som läser konfigurationsvärden från kommandoraden. |
| AddCommandLine(IConfigurationBuilder, String[]) |
Lägger till en CommandLineConfigurationProviderIConfigurationProvider som läser konfigurationsvärden från kommandoraden. |
| AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>) |
Lägger till en CommandLineConfigurationProviderIConfigurationProvider som läser konfigurationsvärden från kommandoraden med hjälp av de angivna växelmappningarna. |
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)
Lägger till ett IConfigurationProvider som läser konfigurationsvärden från kommandoraden.
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
Parametrar
- builder
- IConfigurationBuilder
Att IConfigurationBuilder lägga till i.
- configureSource
- Action<CommandLineConfigurationSource>
Konfigurerar källan.
Returer
Gäller för
AddCommandLine(IConfigurationBuilder, String[])
Lägger till en CommandLineConfigurationProviderIConfigurationProvider som läser konfigurationsvärden från kommandoraden.
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
Parametrar
- configurationBuilder
- IConfigurationBuilder
Att IConfigurationBuilder lägga till i.
- args
- String[]
Kommandoraden args.
Returer
Exempel
Ett enkelt konsolprogram med fem värden.
// 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"]}'");
}
}
}
Kommentarer
Värdena som skickas på kommandoraden i strängmatrisen args ska vara en uppsättning nycklar med prefixet två bindestreck ("--") och sedan värden, avgränsade med antingen likhetstecknet ("=") eller ett blanksteg (" ").
Ett snedstreck ("/") kan användas som ett alternativt prefix, med antingen lika med eller blanksteg, och när du använder ett likhetstecken kan prefixet utelämnas helt och hållet.
Det finns fem grundläggande alternativa format för argument: key1=value1 --key2=value2 /key3=value3 --key4 value4 /key5 value5.
Gäller för
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)
Lägger till en CommandLineConfigurationProviderIConfigurationProvider som läser konfigurationsvärden från kommandoraden med hjälp av de angivna växelmappningarna.
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
Parametrar
- configurationBuilder
- IConfigurationBuilder
Att IConfigurationBuilder lägga till i.
- args
- String[]
Kommandoraden args.
- switchMappings
- IDictionary<String,String>
Växelmappningarna. En ordlista med kort (med prefixet "-") och aliasnycklar (med prefixet "--"), mappad till konfigurationsnyckeln (inget prefix).
Returer
Exempel
Ett enkelt konsolprogram som har två korta och fyra aliasväxlingsmappningar definierade.
// 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"]}'");
}
}
}
Kommentarer
switchMappings Tillåter ytterligare format för alternativa korta nycklar och aliasnycklar som ska användas från kommandoraden. Se även den grundläggande versionen av AddCommandLine för de standardformat som stöds.
Korta nycklar börjar med ett enda bindestreck ("-") och mappas till huvudnyckelnamnet (utan prefix) och kan användas med antingen lika med eller blanksteg. Mappningarna med enkla streck är avsedda att användas för kortare alternativa växlar.
Observera att det inte går att komma åt en enda strecksväxel direkt, men att en växelmappning måste definieras och nås med hjälp av den fullständiga nyckeln. Om du skickar ett odefinierat argument med ett enda bindestreck orsakas som FormatException.
Det finns två format för korta argument: -k1=value1 -k2 value2.
Aliasnyckeldefinitioner börjar med två bindestreck ("--") och mappas till huvudnyckelnamnet (utan prefix) och kan användas i stället för den normala nyckeln. De fungerar också när ett snedstrecksprefix används på kommandoraden (men inte utan prefixet är lika med formatet).
Det finns bara fyra format för aliasargument: --alt3=value3 /alt4=value4 --alt5 value5 /alt6 value6.