Composable CLI Argument Parser for all modern .Net platforms
Parses arguments in the form UtilityName [command] [-o | --options] [operands]
Supports:
- .Net Standard 1.6+ (.Net Core and all future .Net releases are built on this)
- .Net Framework 4.5+
Follows the IEEE Standard closely, but does include common adblibs such as fully named --option
style options.
EntryPoint is available on NuGet:
PM> Install-Package EntryPoint
Pull requests and suggestions are welcome, and some small tasks are already in the Issues.
-
Full documentation: https://nick-lucas.github.io/EntryPoint/
-
Example Implementation: https://github.com/Nick-Lucas/EntryPoint/tree/master/test/Example
Parse your application's Command Line Arguments into a declarative POCO, in one line.
Arguments are defined as declarative POCOs using Attributes.
var arguments = Cli.Parse<CliArguments>(args);
if (arguments.Option) {
// ...
};
public class CliArguments : BaseCliArguments {
public CliArguments() : base("MyApplication") { }
[Option(ShortName: 'o',
LongName: "option-1")]
public bool Option { get; set; }
}
Commands have a dedicated API:
Cli.Execute<CliCommands>(args);
public class CliCommands : BaseCliCommands {
[Command("primary")]
public void Primary(string[] args) {
// Arguments Parsing and Command Code...
}
}