Я использовал этот код, но я получаю компилятор, предупреждающий, что этот метод создания устарел. Поскольку я хочу удалить предупреждение и перейти к более новой версии, я хочу исправить код, но я не могу заставить библиотеку CommandLineParser 1.9.7 работать.C# CommandLine.Parser - использовать конструктор, который принимает действие <ParserSettings>
CommandLine.Parser OptionParser = new CommandLine.Parser(new CommandLine.ParserSettings
{
CaseSensitive = UseCaseSensitive,
IgnoreUnknownArguments = IgnoreUnknownOptions,
MutuallyExclusive = EnableMutuallyExclusive
}
);
bool Result = OptionParser.ParseArguments(Args, this);
Этот код работает, и результат будет True/False на основе параметров командной строки и переданных опций. Однако выдается следующее предупреждение.
Warning 1 'CommandLine.Parser.Parser(CommandLine.ParserSettings)' is obsolete: 'Use constructor that accepts Action<ParserSettings>.'
В интерактивной справке показано это как пример использования функции.
new CommandLine.Parser(configuration:() => new CommandLine.ParserSettings(Console.Error))
Я попытался изменить код, но я не получаю право Lambda, и я не уверен, как получить эту работу. Пока код выполняется, я получаю только функции по умолчанию, я не могу изменить параметры Case Sensitive, Mutually Exclusive и т. Д.
Line с помощью конструктора (от встроенного IDE помощи)
bool Result = new CommandLine.Parser(configuration: (Settings) => new CommandLine.ParserSettings(UseCaseSensitive, EnableMutuallyExclusive, IgnoreUnknownOptions, null)).ParseArguments(Args, this);
снова Пытаюсь с виртуальными параметрами:
bool Result = new CommandLine.Parser(configuration: (Settings) => new CommandLine.ParserSettings
{
CaseSensitive = UseCaseSensitive,
IgnoreUnknownArguments = IgnoreUnknownOptions,
MutuallyExclusive = EnableMutuallyExclusive
}
).ParseArguments(Args, this);
Интерактивная справка не поспевает с инструментом, и я мог используйте любые указатели, которые могут быть у кого-то. Заранее спасибо ...
Спасибо, что небольшое изменение было тем, что мне нужно для исправления кода. Я узнаю эти Лямбды еще. –