Skip to content
Daxanius edited this page Mar 21, 2022 · 3 revisions

my.exe command

public class ACommand : ConsoleCommand
{
    public ACommand()
    {
        IsCommand("command");
    }

    public override int Run(string[] remainingArguments)
    {
        Console.WriteLine("Hello World");
        return 0;
    }
}

my.exe command arg1 arg2

public class ACommand : ConsoleCommand
{
    string _key;
    string _value;

    public ACommand()
    {
        IsCommand("command");
        HasAdditionalArguments(2, " <key> <value>");
    }

    public override int? OverrideAfterHandlingArgumentsBeforeRun(string[] remainingArguments)
    {
        _key = remainingArguments[0];
        _value = remainingArguments[1];

        return base.OverrideAfterHandlingArgumentsBeforeRun(remainingArguments);
    }

    public override int Run(string[] remainingArguments)
    {
        Console.WriteLine("{0}={1}", _key, _value);
        return 0;
    }
}

my.exe command --name ManyConsole

public class ACommand : ConsoleCommand
{
    string _name = "World";

    public ACommand()
    {
        IsCommand("command");
        HasOption("n|name=", "A Name", n => _name = n);
    }

    public override int Run(string[] remainingArguments)
    {
        Console.WriteLine("Hello {0}", _name);
        return 0;
    }
}
Clone this wiki locally