C#:CommandLineParser,如何传递字符串数组?
C#: CommandLineParser, how to pass an array of strings?
我正在使用 CommandLineParser,我想传递多个参数,这些参数应该以单个数组结尾。这是我的 class:
public class ClientConfig : Config
{
[Option("load")]
public string[]? Load { get; set; }
}
当我使用以下命令行时:
my.exe --load=1 --load=2 --load=3
解析我的“负载”时 属性 应该是:["1", "2", "3"]
。但是,当我尝试这样做时,出现以下异常:
System.InvalidOperationException: 'Sequence contains no elements'
我该如何解决这个问题?
在文档中,它使用 IEnumerable
作为字符串数组,因此通过此 ClientConfig:
public class ClientConfig
{
[Option("load")]
public IEnumerable<string> Load { get; set; }
}
这对我有用:
my.exe --load 1 2 3
我正在使用 CommandLineParser,我想传递多个参数,这些参数应该以单个数组结尾。这是我的 class:
public class ClientConfig : Config
{
[Option("load")]
public string[]? Load { get; set; }
}
当我使用以下命令行时:
my.exe --load=1 --load=2 --load=3
解析我的“负载”时 属性 应该是:["1", "2", "3"]
。但是,当我尝试这样做时,出现以下异常:
System.InvalidOperationException: 'Sequence contains no elements'
我该如何解决这个问题?
在文档中,它使用 IEnumerable
作为字符串数组,因此通过此 ClientConfig:
public class ClientConfig
{
[Option("load")]
public IEnumerable<string> Load { get; set; }
}
这对我有用:
my.exe --load 1 2 3