2016-02-05 40 views

回答

0

1.9.71我不'看到任何选项,你可以在解析后从参数中获取无效令牌。但是,如果您升级到预发布版本,即

<package id="CommandLineParser" version="2.0.275-beta" targetFramework="net45" /> 

此版本为解析结果提供了更多的灵活性。因此,您可以轻松找到如下所示的无效令牌:

var result = CommandLine.Parser.Default.ParseArguments<Options>(args); 

result.MapResult(
     options => 
     { 
      // Do something with optios 
      return 0; 
     }, 
     errors => 
     { 
      var invalidTokens = errors.Where(x => x is TokenError).ToList(); 
      if(invalidTokens != null) 
      { 
       invalidTokens.ForEach(token => Console.WriteLine(((TokenError)token).Token)); 
      } 

      return 1; 
     }); 
+1

在某人为不同的版本代码疯狂之前,该工作=> foreach(var error.OfType ()“参数:'{0}'不正确!”,error.NameInfo);}}。 } return 1; – Elisabeth