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.
Installation
EntryPoint is available on NuGet:
PM> Install-Package EntryPoint
Pull requests and suggestions are welcome, and some small tasks are already in the Issues.
Documentation
-
Full documentation: https://nick-lucas.github.io/EntryPoint/
-
Example Implementation: https://github.com/Nick-Lucas/EntryPoint/tree/master/test/Example
As simple as...
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... } }