Calabonga.Commandex.Shell.Develop.Template
2.0.0
dotnet new install Calabonga.Commandex.Shell.Develop.Template::2.0.0
Calabonga.Commandex.Shell.Develop
Description
This is a nuget-package Calabonga.Commandex.Shell.Develop.Template (tools) that install to your Visual Studio a new type of the project. New type project can create a Developer version of the Command Executer (Calabonga.Commandex
). Witch is created to runs commands of any type for any purposes. For example, to execute a stored procedure or just to copy some files to some destination. And so on...
What is Calabonga.Commandex
The Calabonga.Commandex
- This is an application on WPF-platform built with CommunityToolkit.MVVM for modules (plugins) using: launch and execute.
What is the Calabonga.Commandex
can:
- Find a modules
.dll
(plugins) in the folder you set up. - Launch or execute modules
.dll
(plughis) from GUI. - Get the results of the module's (plugis) work after they completed.
It's a complex solution with a few repositories:
- Calabonga.Commandex.Shell → Command Executer or Command Launcher. To run commands of any type for any purpose. For example, to execute a stored procedure or just to copy some files to some destination.
- Calabonga.Commandex.Commands → Commands for Calabonga.Commandex.Shell that can execute them from unified shell.
- Calabonga.Commandex.Shell.Develop.Template → This is a Developer version of the Command Executer (
Calabonga.Commandex
). Which is created to runs commands of any type for any purposes. For example, to execute a stored procedure or just to co… - Calabonga.Commandex.Engine → Engine and contracts library for Calabonga.Commandex. Contracts are using for developing a modules for Commandex Shell.
- Calabonga.Commandex.Engine.Processors → Results Processors for Calabonga.Commandex.Shell commands execution results. This is an extended version of the just show string in the notification dialog.
How to install template
Nothing is simpler then install this template. Just execute command in powershell
:
dotnet new install Calabonga.Commandex.Shell.Develop.Template
How to use
This application can only test your Command for Commandex, but almost in a real conditions. How? Please do a few simple steps:
Please implement a
ICommandexCommand
interface in WPF Class Library project and add reference toCalabonga.Commandex.Shell.Develop
.Register your
ICommandexCommand
implementation in theDependencyContainer.cs
.internal static IServiceProvider ConfigureServices() { var services = new ServiceCollection(); services.AddLogging(options => { options.AddSerilog(dispose: true); options.AddDebug(); }); services.AddSingleton<DefaultDialogView>(); services.AddSingleton<MainWindow>(); services.AddSingleton<ViewModels.MainWindowsViewModel>(); services.AddSingleton<IDialogService, DialogService>(); services.AddSingleton<IAppSettings>(_ => App.Current.Settings); services.AddSingleton<ISettingsReaderConfiguration, DefaultSettingsReaderConfiguration>(); // dialogs and wizard services.AddTransient<IWizardView, Wizard>(); services.AddTransient<IDialogService, DialogService>(); services.AddTransient(typeof(IWizardManager<>), typeof(WizardManager<>)); // -------------------------------------------------- // 1. Attach command definition from your project where Commandex.Command implemented. // 2. Then uncomment line below and add your command type. // services.AddDefinitions(typeof(WelcomeAppDefinition)); // <-- uncomment line and register your command here // -------------------------------------------------- return services.BuildServiceProvider(); }
Inject your command implementation into
MainWindowsViewModel
asICommandexCommand
.public partial class MainWindowsViewModel : ViewModelBase { private readonly IDialogService _dialogService; public MainWindowsViewModel(IDialogService dialogService, IAppSettings settings) { Title = $"Commandex Shell Emulator for Easy developing ({settings.CommandsPath})"; Version = "1.0.0-rc.7"; _dialogService = dialogService; } [ObservableProperty] private string _version; /// <summary> /// Executes MVVM button action /// </summary> [RelayCommand] private Task ExecuteAsync() { _dialogService.ShowNotification("You do not attach your ICommandexCommand yet. " + "Please add your component definition in the DependencyContainer.cs file."); return Task.CompletedTask; } }
Use your injected instance in
ExecuteAsync()
method to execute command as shown above.If you everything do correctly, than after button click on the form your command will come executed.
Screenshot
v1.0.0
Ingredients
WPF, MVVM, CommunityToolkit, AppDefinitions, etc.
Видео (Video)
В основном репозитории Calabonga.Commandex.Shell есть несколько видео с инструкциями и разъяснениями, как использовать Commandex. А также видео о том, какие типы команд существуют и как для Commandex создавать команды разных типов.
-
net9.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2.0.0 | 87 | 11/19/2024 |
2.0.0-beta.1 | 38 | 11/19/2024 |
1.4.2 | 94 | 11/12/2024 |
1.4.1 | 96 | 11/1/2024 |
1.3.0 | 97 | 10/12/2024 |
1.2.0 | 90 | 10/9/2024 |
1.0.0 | 92 | 9/30/2024 |
1.0.0-rc.17 | 61 | 9/28/2024 |
1.0.0-rc.16 | 89 | 9/16/2024 |
1.0.0-rc.15 | 65 | 9/14/2024 |
1.0.0-rc.13 | 68 | 9/13/2024 |
1.0.0-rc.11 | 61 | 9/11/2024 |
1.0.0-rc.10 | 59 | 9/11/2024 |
1.0.0-rc.9 | 70 | 9/7/2024 |
1.0.0-rc.7 | 64 | 9/5/2024 |
1.0.0-rc.6 | 62 | 9/4/2024 |
1.0.0-rc.5 | 87 | 8/20/2024 |
1.0.0-rc.4 | 82 | 8/16/2024 |
1.0.0-rc.3 | 82 | 8/15/2024 |
1.0.0-beta.15 | 72 | 8/8/2024 |
1.0.0-beta.12 | 59 | 8/7/2024 |
1.0.0-beta.11 | 41 | 8/5/2024 |
1.0.0-beta.9 | 36 | 8/5/2024 |
1.0.0-beta.8 | 42 | 8/4/2024 |
1.0.0-beta.7 | 43 | 8/2/2024 |
1.0.0-beta.6 | 39 | 8/2/2024 |
1.0.0-beta.5 | 49 | 8/1/2024 |
1.0.0-beta.2 | 52 | 8/1/2024 |
1.0.0-beta.1 | 56 | 8/1/2024 |
Migration to NET9