我正在用C#编写一个控制台应用程序(.NET Framework)。我想使用命令行中的参数,而我正在尝试使用命令行解析器库来帮助我做到这一点。
这是Nuget上的软件包-https://www.nuget.org/packages/CommandLineParser/
我从这个StackOverflow问题中找到了相关信息-Best way to parse command line arguments in 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个有关如何使用该库的教程中看到了相同的示例代码。 (例如,请参见Parsing Command Line Arguments with Command Line Parser Library)