Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Option without value should throw an error.

Aberta
#861 3 comentários 3 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
csharp
Domínio
cli

Direção de pesquisa

Reproduza o comportamento com CommandLine.Parser.Default.ParseArguments usando a classe Options e os exemplos de --value. Rastreie o ponto de entrada da análise de valores de opções e encontre os testes existentes do parser; considera-se concluído quando --value invoca WithNotParsed para um valor string ausente, enquanto --value blah continua sendo analisado com sucesso.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

If I have a string option and it is called without a value, no error is thrown. This is what I would expect.

using CommandLine;

namespace cli
{
	public class Program
	{
		static void Main(string[] args)
		{
			CommandLine.Parser.Default.ParseArguments<Options>(args)
				.WithParsed(options => RunOptions(options))
				.WithNotParsed(error => ErrorAndExit(error));
		}

		static void RunOptions(Options options)
		{

		}

		static void ErrorAndExit(IEnumerable<Error> 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.

cli --value # should throw an error
cli --value blah # ok, this is what i want
Linguagem predominante
C#
Estrelas
4.8k
Forks
478
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de commandlineparser/commandline

Todas as issues de commandlineparser/commandline

Issues semelhantes

Mais issues de C#

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.