commandlineparser / commandlineparser/commandline

Default verb treated as a value.

Open
#794 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C#
Stars
4.8k
Forks
478
PR merge metrics
No merged PRs in 30d

Description

This was seen on version 2.8.0 targeting .NET Core 3.1 / 5.

Minimum code sample:
```
void Main()
{
var parser = new Parser();
var result = parser.ParseArguments(new[] { "copy", @"A:\", @"C:\", });
result
.WithParsed(a =>
{
Console.WriteLine(a.SourcePath);
Console.WriteLine(a.DestinationPath);
});
}

[Verb("copy", isDefault: true)]
class CopyArguments
{
[Value(0, MetaName = "source", Required = true)]
public string? SourcePath { get; set; }

[Value(1, MetaName = "destination", Required = true)]
public string? DestinationPath { get; set; }
}
````

This prints "copy" for `SourcePath` and "A:\\" for `DestinationPath`.

At this point in development I only have one verb (more verbs are planned), and that verb is/will be the default one.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.