Библиотека анализатора командной строки, выдающая ошибку «System.Type» в C # - PullRequest
1 голос
/ 05 ноября 2019

Я пишу консольное приложение (.NET Framework) на C #. Я хочу использовать аргументы из командной строки, и я пытаюсь использовать библиотеку анализатора командной строки, чтобы помочь мне сделать это.

Это пакет на Nuget - https://www.nuget.org/packages/CommandLineParser/

Я узнал об этом из этого вопроса StackOverflow - Лучший способ разобрать аргументы командной строки в C #?

MWE

using System;
using CommandLine;

namespace CLPtest
{
    class Program
    { 

        class SomeOptions
        {
            [Option('n', "name")]
            public string Name { get; set; }

        }

        static void Main(string[] args)
        {

            var options = new SomeOptions();

            CommandLine.Parser.Default.ParseArguments(args, options);

        }
    }
}

Когда я пытаюсь создать минимальный рабочий пример, я получаю сообщение об ошибке options в этой строке:

CommandLine.Parser.Default.ParseArguments(args, options);

Ошибка Argument 2: cannot convert from 'CLPtest.Program.SomeOptions' to 'System.Type'

Я действительно сбит с толку, так как видел этот же пример кода по крайней мере в 3 руководствах по использованию этой библиотеки. (см., например: Анализ аргументов командной строки с библиотекой анализатора командной строки )

...