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
35 lines
894 B
C#
35 lines
894 B
C#
using Microsoft.Extensions.Logging;
|
|
using Spectre.Console;
|
|
using Spectre.Console.Cli;
|
|
|
|
namespace Logging.Commands;
|
|
|
|
public class HelloCommand : Command<HelloCommand.Settings>
|
|
{
|
|
private ILogger<HelloCommand> _logger;
|
|
private IAnsiConsole _console;
|
|
|
|
public HelloCommand(IAnsiConsole console, ILogger<HelloCommand> logger)
|
|
{
|
|
_console = console;
|
|
_logger = logger;
|
|
_logger.LogDebug("{0} initialized", nameof(HelloCommand));
|
|
}
|
|
|
|
public class Settings : LogCommandSettings
|
|
{
|
|
[CommandArgument(0, "[Name]")]
|
|
public string Name { get; set; }
|
|
}
|
|
|
|
|
|
public override int Execute(CommandContext context, Settings settings)
|
|
{
|
|
_logger.LogInformation("Starting my command");
|
|
AnsiConsole.MarkupLine($"Hello, [blue]{settings.Name}[/]");
|
|
_logger.LogInformation("Completed my command");
|
|
|
|
return 0;
|
|
}
|
|
}
|