Overview
An open source, .NET Standard 1.1 library implementation of the Command Pattern - including reversible commands.
Below are the main features of the library. See the linked code for details.
Please contact me if you have any questions.
Getting Started
NuGet Package Installation
To install the ChannelAdam.Commands NuGet package run the following command in the Package Manager Console:
1PM> Install-Package ChannelAdam.Commands
Usage
An example of the ReversibleCommandManager
, using the ExecuteSetPropertyCommand
and UndoPreviousCommand
methods:
1var testObject = new ClassWithProperty
2{
3 MyProperty = 1
4};
5
6var commandManager = new ReversibleCommandManager();
7
8commandManager.ExecuteSetPropertyCommand(testObject, p => p.MyProperty, 100);
9commandManager.ExecuteSetPropertyCommand(testObject, p => p.MyProperty, 200);
10
11commandManager.UndoPreviousCommand();
12// MyProperty is now back to 100
Reference
Command Action
A Command Action has an Execute
method with a void
return parameter.
Command Function
A Command Function has an Execute
method with a specified return parameter.
Reversible Commands
Need to execute some commands and be able to undo them? This Reversible Command implementation is for you!
Use the Reversible Command Manager to manage the stack of commands that can be reversed.
- Reversible Command Action interface
- Reversible Command Action base class
- Reversible Command Function interface
- Reversible Command Function base class
Set Property - Command Implementation
A command implementation for setting a property on an object.
comments powered by Disqus