mirror of
https://github.com/nsnail/spectre.console.git
synced 2025-04-13 15:42:50 +08:00

* Adding a dark mode * Adding reference for types to summary pages * Adding API Reference * Adding modifiers to methods/fields/etc * Minimizing files input * Caching a lot of the output pages * Cache only for each execution * Adding API references to existing docs
30 lines
734 B
C#
30 lines
734 B
C#
using System;
|
|
using System.ComponentModel;
|
|
using Spectre.Console.Cli;
|
|
|
|
namespace Injection.Commands;
|
|
|
|
public sealed class DefaultCommand : Command<DefaultCommand.Settings>
|
|
{
|
|
private readonly IGreeter _greeter;
|
|
|
|
public sealed class Settings : CommandSettings
|
|
{
|
|
[CommandOption("-n|--name <NAME>")]
|
|
[Description("The person or thing to greet.")]
|
|
[DefaultValue("World")]
|
|
public string Name { get; set; }
|
|
}
|
|
|
|
public DefaultCommand(IGreeter greeter)
|
|
{
|
|
_greeter = greeter ?? throw new ArgumentNullException(nameof(greeter));
|
|
}
|
|
|
|
public override int Execute(CommandContext context, Settings settings)
|
|
{
|
|
_greeter.Greet(settings.Name);
|
|
return 0;
|
|
}
|
|
}
|