Packages
The framework is made up of a number of NuGet packages focused on four areas:
| Area | Description |
|---|---|
| ASP.Net Core | Extensions for building REST APIs from commands using a configuration based approach |
| Core | The core packages - these are always required when working with the commanding framework though the non-abstract package will only need to be referenced by the host process |
| Dispatch, Processing and Auditing | These packages deal with auditing, the dispatch to queues, and execution based on pulling from queues |
| Performance | Handle the caching of responses to commands in either in-memory caches or a Redis cache based on command signatures |
The dependencies and organisation of these packages is shown in the diagram below:

And the packages contain the following capabilities:
| Package | Capabilities |
|---|---|
| AzureFromTheTrenches.Commanding |
|
| AzureFromTheTrenches.Commanding.Abstractions |
|
| AzureFromTheTrenches.Commanding.AspNetCore |
|
| AzureFromTheTrenches.Commanding.AspNetCore.Swashbuckle |
|
| AzureFromTheTrenches.Commanding.AzureEventHub |
|
| AzureFromTheTrenches.Commanding.AzureServiceBus |
|
| AzureFromTheTrenches.Commanding.AzureStorage |
|
| AzureFromTheTrenches.Commanding.Cache |
|
| AzureFromTheTrenches.Commanding.Cache.MemoryCache |
NOTE: This package will be renamed in the future to better reflect its purpose
|
| AzureFromTheTrenches.Commanding.Cache.Redis |
|
| AzureFromTheTrenches.Commanding.Cache.Redis |
|
| AzureFromTheTrenches.Commanding.Http |
|
| AzureFromTheTrenches.Commanding.Queue |
Does not normally require adding directly
|