XO.Console.Cli.Extensions 5.0.9

dotnet add package XO.Console.Cli.Extensions --version 5.0.9
                    
NuGet\Install-Package XO.Console.Cli.Extensions -Version 5.0.9
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="XO.Console.Cli.Extensions" Version="5.0.9" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="XO.Console.Cli.Extensions" Version="5.0.9" />
                    
Directory.Packages.props
<PackageReference Include="XO.Console.Cli.Extensions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add XO.Console.Cli.Extensions --version 5.0.9
                    
#r "nuget: XO.Console.Cli.Extensions, 5.0.9"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#addin nuget:?package=XO.Console.Cli.Extensions&version=5.0.9
                    
Install XO.Console.Cli.Extensions as a Cake Addin
#tool nuget:?package=XO.Console.Cli.Extensions&version=5.0.9
                    
Install XO.Console.Cli.Extensions as a Cake Tool

XO.Console.Cli.Extensions

This library integrates XO.Console.Cli applications with the .NET runtime extensions, including dependency injection and the .NET Generic Host. By default, the integration:

  • Adds CommandAppBuilderOptions and ICommandApp to the service collection
  • Configures XO.Console.Cli to create instances of command and parameters types using IServiceProvider (which means you can use constructor injection for dependencies)
  • Sets the command-line application name to IHostEnvironment.ApplicationName
  • Wraps IHost startup and command execution to ensure the application reliably logs critical exceptions and responds to shutdown signals

Getting Started

1. Add a reference

> dotnet add package XO.Console.Cli.Extensions

If your project does not already reference Microsoft.Extensions.Hosting, add that, too.

> dotnet add package Microsoft.Extensions.Hosting

2. Set up and run the host

return await Host.CreateDefaultBuilder(args)
    .RunCommandAppAsync(args, static (context, builder) => {
        builder.AddCommand<GreetingCommand>("greet");
    });

Integration with the simpler IHostApplicationBuilder is also possible. First, add the command-line application to the service collection. Then, build the host. Finally, run the configured command-line application.

HostApplicationBuilder builder = Host.CreateApplicationBuilder(args);
builder.Services.AddCommandApp(static (context, builder) => {
    builder.AddCommand<GreetingCommand>("greet");
});

IHost host = builder.Build();
return await host.RunCommandAppAsync(args);
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on XO.Console.Cli.Extensions:

Package Downloads
XO.Console.Cli.Instrumentation

OpenTelemetry instrumentation for XO.Console.Cli

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
5.0.9 137 6/11/2024
4.0.5 159 11/29/2023
4.0.4 215 6/22/2023
3.0.7 476 8/29/2022
2.0.10 501 7/19/2022
2.0.9 434 6/15/2022
2.0.8 441 6/15/2022