0

此代码使用 CommandLineParser 库有效。但是,只要不设置参数,就无法得到DisplayHelp方法返回的结果。我的代码在我有参数时有效,但在没有参数时无效。这是我的代码:

int result;

var parser = new CommandLine.Parser(with => with.HelpWriter = null);
var parserResult = parser.ParseArguments<ProgramOptions>(args);

ProgramOptions opts = null;
Program.options = Parser.Default.ParseArguments<ProgramOptions>(args)
    .WithParsed(options => { opts = options; })
    .WithNotParsed(errs => DisplayHelp(parserResult, errs));
if ((opts == null) || (args.Length == 0))
{
    result = (int)ApplicationResult.HelpRequested;
}
else
{
    result = MainWithOptions(opts);
}
  1. 使用有效参数 Program.options 使用从命令行 args => OK 提取的参数进行初始化
  2. 如果命令行参数无效,则会显示帮助。=> 好的
  3. 没有命令行参数,不显示帮助=>这不是我想要的。

谢谢您的帮助。

4

0 回答 0