commandlineparser / commandlineparser/commandline
Default verb treated as a value.
- Ngôn ngữ chính
- C#
- Star
- 4.8k
- Fork
- 478
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
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.
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện mẫu thông qua Parser.ParseArguments với các thuộc tính [Verb] và [Value] như đã chỉ ra. Theo dõi cách verb mặc định được xử lý trước khi các giá trị vị trí được gán, sau đó thêm hoặc cập nhật một kiểm thử hồi quy chứng minh rằng SourcePath nhận A:\\ và DestinationPath nhận C:\\ khi verb mặc định bị bỏ qua khỏi các đối số.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- csharp
- Lĩnh vực
- cli
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 45/100