CommandLineConfigurationExtensions.AddCommandLine Метод

Определение

Перегрузки

Имя Описание
AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Добавляет значение IConfigurationProvider конфигурации, которое считывает значения конфигурации из командной строки.

AddCommandLine(IConfigurationBuilder, String[])

Добавляет значение CommandLineConfigurationProviderIConfigurationProvider конфигурации, которое считывает значения конфигурации из командной строки.

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

Добавляет значение CommandLineConfigurationProviderIConfigurationProvider , которое считывает значения конфигурации из командной строки с помощью указанных сопоставлений коммутаторов.

AddCommandLine(IConfigurationBuilder, Action<CommandLineConfigurationSource>)

Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs

Добавляет значение IConfigurationProvider конфигурации, которое считывает значения конфигурации из командной строки.

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

Параметры

builder
IConfigurationBuilder

Добавляемый IConfigurationBuilder объект.

configureSource
Action<CommandLineConfigurationSource>

Настраивает источник.

Возвращаемое значение

Объект IConfigurationBuilder.

Применяется к

AddCommandLine(IConfigurationBuilder, String[])

Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs

Добавляет значение CommandLineConfigurationProviderIConfigurationProvider конфигурации, которое считывает значения конфигурации из командной строки.

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

Параметры

configurationBuilder
IConfigurationBuilder

Добавляемый IConfigurationBuilder объект.

args
String[]

Args командной строки.

Возвращаемое значение

Объект IConfigurationBuilder.

Примеры

Простое консольное приложение с пятью значениями.

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

Комментарии

Значения, передаваемые в командной строке args в массиве строк, должны быть набором ключей, префиксированных двумя дефисами ("-"), а затем значениями, разделенными знаком равенства ("=") или пробелом (" ").

Косая черта ("/") может использоваться как альтернативный префикс, с равными или пробелами, и при использовании знака равенства префикс можно полностью оставить.

Существует пять основных альтернативных форматов аргументов: key1=value1 --key2=value2 /key3=value3 --key4 value4 /key5 value5

Применяется к

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

Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs
Исходный код:
CommandLineConfigurationExtensions.cs

Добавляет значение CommandLineConfigurationProviderIConfigurationProvider , которое считывает значения конфигурации из командной строки с помощью указанных сопоставлений коммутаторов.

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

Параметры

configurationBuilder
IConfigurationBuilder

Добавляемый IConfigurationBuilder объект.

args
String[]

Args командной строки.

switchMappings
IDictionary<String,String>

Сопоставления коммутаторов. Словарь short (с префиксом "-") и ключами псевдонима (с префиксом "-"), сопоставленным с ключом конфигурации (без префикса).

Возвращаемое значение

Объект IConfigurationBuilder.

Примеры

Простое консольное приложение с двумя короткими и четырьмя сопоставлениями переключателей псевдонимов.

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

Комментарии

Позволяет switchMappings использовать дополнительные форматы для альтернативных коротких и псевдонимов ключей из командной строки. Также см. базовую версию поддерживаемых AddCommandLine стандартных форматов.

Короткие ключи начинаются с одного тире ("-") и сопоставляются с именем основного ключа (без префикса) и могут использоваться либо с равными, либо пробелами. Сопоставления одиночных тире предназначены для более коротких альтернативных коммутаторов.

Обратите внимание, что доступ к одному тире невозможно получить напрямую, но должен иметь сопоставление коммутатора, определенное и доступ к которому имеется с помощью полного ключа. Передача неопределенного аргумента с одним тире приведет к возникновению FormatException.

Существует два формата для коротких аргументов: -k1=value1 -k2 value2

Определения ключей псевдонима начинаются с двух дефисов (--) и сопоставляются с именем основного ключа (без префикса) и могут использоваться вместо обычного ключа. Они также работают, если префикс косой черты используется в командной строке (но не с префиксом равного формата).

Существует только четыре формата для псевдонимов аргументов: --alt3=value3 /alt4=value4 --alt5 value5 /alt6 value6

Применяется к