commandlineparser / commandlineparser/commandline
Option without value should throw an error.
- 主要語言
- C#
- 星號
- 4.8k
- 分支
- 478
- PR 合併指標
- 30 天內沒有已合併 PR
描述
If I have a string option and it is called without a value, no error is thrown. This is what I would expect.
```csharp
using CommandLine;
namespace cli
{
public class Program
{
static void Main(string[] args)
{
CommandLine.Parser.Default.ParseArguments(args)
.WithParsed(options => RunOptions(options))
.WithNotParsed(error => ErrorAndExit(error));
}
static void RunOptions(Options options)
{
}
static void ErrorAndExit(IEnumerable error)
{ }
}
public class Options
{
[Option("value", Required = false, HelpText = "A value.")]
public string Value { get; set; }
}
}
```
If i call this command line i get no error.
```bash
cli --value # should throw an error
cli --value blah # ok, this is what i want
```
貢獻指南
這個儲存庫沒有索引到貢獻指南
研究方向
使用 Options 類別和 --value 範例,透過 CommandLine.Parser.Default.ParseArguments 重現該行為。追蹤選項值解析的進入點,並找到現有的 parser 測試;完成條件是:缺少 string 值時,--value 呼叫 WithNotParsed,而 --value blah 仍能成功解析。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- csharp
- 領域
- cli
- Issue 類型
- 缺陷
- 難度
- 3/5
- 預估耗時
- 1-2 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100