CommandLineConfigurationExtensions.AddCommandLine Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Aşırı Yüklemeler
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>) |
Komut satırından yapılandırma değerlerini okuyan bir IConfigurationProvider ekler. |
AddCommandLine(IConfigurationBuilder, String[]) |
Komut satırından yapılandırma değerlerini okuyan bir CommandLineConfigurationProvider ekler. |
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>) |
Belirtilen anahtar eşlemelerini kullanarak komut satırından yapılandırma değerlerini okuyan bir CommandLineConfigurationProvider ekler. |
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)
Komut satırından yapılandırma değerlerini okuyan bir IConfigurationProvider ekler.
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
Parametreler
- builder
- IConfigurationBuilder
IConfigurationBuilder eklenecek.
- configureSource
- Action<CommandLineConfigurationSource>
Kaynağı yapılandırıyor.
Döndürülenler
Şunlara uygulanır
AddCommandLine(IConfigurationBuilder, String[])
Komut satırından yapılandırma değerlerini okuyan bir CommandLineConfigurationProvider ekler.
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
Parametreler
- configurationBuilder
- IConfigurationBuilder
IConfigurationBuilder eklenecek.
- args
- String[]
Komut satırı birleştirilir.
Döndürülenler
Örnekler
Beş değeri olan basit bir konsol uygulaması.
// 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"]}'");
}
}
}
Açıklamalar
Komut satırında, dize dizisinde args
geçirilen değerler, iki tire ("--") ön ekli bir anahtar kümesi ve ardından eşittir işareti ("=") veya boşluk (" ") ile ayrılmış değerler olmalıdır. Eğik çizgi ("/") eşittir veya boşlukla alternatif bir ön ek olarak kullanılabilir. Eşittir işareti kullanılırken ön ek tamamen dışarıda bırakılabilir.
Bağımsız değişkenler için beş temel alternatif biçim vardır:
key1=value1
--key2=value2
/key3=value3
--key4 value4
/key5 value5
Şunlara uygulanır
AddCommandLine(IConfigurationBuilder, String[], IDictionary<String,String>)
Belirtilen anahtar eşlemelerini kullanarak komut satırından yapılandırma değerlerini okuyan bir CommandLineConfigurationProvider ekler.
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
Parametreler
- configurationBuilder
- IConfigurationBuilder
IConfigurationBuilder eklenecek.
- args
- String[]
Komut satırı birleştirilir.
- switchMappings
- IDictionary<String,String>
Anahtar eşlemeleri. Yapılandırma anahtarına (ön ek olmadan) eşlenmiş kısa ("-" ön ekine sahip) ve diğer ad anahtarlarından oluşan bir sözlük ("--" ön eki ile).
Döndürülenler
Örnekler
İki kısa ve dört diğer ad anahtarı eşlemesi tanımlanmış basit bir konsol uygulaması.
// 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"]}'");
}
}
}
Açıklamalar
, switchMappings
komut satırından alternatif kısa ve diğer ad anahtarlarının kullanılması için ek biçimler sağlar. Desteklenen standart biçimler için temel sürümüne AddCommandLine
bakın.
Kısa tuşlar tek tireyle ("-") başlar ve ana anahtar adına (ön ek olmadan) eşlenir ve eşittir veya boşlukla kullanılabilir. Tek çizgili eşlemelerin daha kısa alternatif anahtarlar için kullanılması amaçlanmıştır. Tek bir tire anahtarına doğrudan erişilemez, ancak tam anahtar kullanılarak tanımlanmış ve erişilen bir anahtar eşlemesi olmalıdır. Tanımsız bir tek tire bağımsız değişkeni geçirmek bir FormatExceptionneden olur.
Kısa bağımsız değişkenler için iki biçim vardır: -k1=value1
ve -k2 value2
.
Diğer ad anahtar tanımları iki kısa çizgiyle ("--") başlar ve ana anahtar adına (ön ek olmadan) eşlenir ve normal anahtar yerine kullanılabilir. Komut satırında eğik çizgi ön eki kullanıldığında da çalışırlar (ancak ön ek olmadan eşittir biçimiyle çalışmazlar).
Diğer ad bağımsız değişkenleri için yalnızca dört biçim vardır:
--alt3=value3
/alt4=value4
--alt5 value5
/alt6 value6