« Command Line Parser Library » : différence entre les versions
De Banane Atomic
Aller à la navigationAller à la recherche
Ligne 4 : | Ligne 4 : | ||
= Exemple = | = Exemple = | ||
<kode lang= | <kode lang=cs> | ||
// créer une classe dont l'instance sera passée à la méthode ParseArguments | // créer une classe dont l'instance sera passée à la méthode ParseArguments | ||
class Options | class Options | ||
{ | { | ||
[ | [Usage(ApplicationAlias = "ExportRates")] | ||
public | public static IEnumerable<Example> Examples => new List<Example>() | ||
{ | { | ||
new Example( | |||
"Description of the application", | |||
new Options { Option1 = "Option1", Option2 = 100 }) | |||
}; | |||
[Option('o', "option1", Required = true, HelpText = "Option1.")] | |||
public string Option1 { get; set; } | |||
} | |||
[Option('t', "option2", HelpText = "Option2.")] | |||
[Option(' | public int Option2 { get; set; } | ||
public | |||
// à confirmer | |||
[OptionList('o', "options", HelpText = "Liste des options")] | [OptionList('o', "options", HelpText = "Liste des options")] | ||
public IList<string> OptionsList { get; set; } | public IList<string> OptionsList { get; set; } |
Version du 26 mars 2020 à 16:04
Documentation
Exemple
// créer une classe dont l'instance sera passée à la méthode ParseArguments class Options { [Usage(ApplicationAlias = "ExportRates")] public static IEnumerable<Example> Examples => new List<Example>() { new Example( "Description of the application", new Options { Option1 = "Option1", Option2 = 100 }) }; [Option('o', "option1", Required = true, HelpText = "Option1.")] public string Option1 { get; set; } [Option('t', "option2", HelpText = "Option2.")] public int Option2 { get; set; } // à confirmer [OptionList('o', "options", HelpText = "Liste des options")] public IList<string> OptionsList { get; set; } [Option('v', null, HelpText = "Print details during execution.")] public bool Verbose { get; set; } // récupère tous les arguments qui n'ont été récupérés par une option [ValueList(typeof(List<string>))] public IList<string> InputFiles { get; set; } } |
var options = new Options(); if (CommandLine.Parser.Default.ParseArguments(args, options)) { if (options.Verbose) { } var inputDirectory = options.InputDirectory; if (options.OptionsList != null && options.OptionsList.Contains("mon_option")) { } } |
-h --inputdirectory="C:\Dossier" --inputdirectory "C:\Dossier" -i"C:\Dossier" --options=mon_options:autre_option -omon_options:autre_option -v |