StateMachineApplicationBuilderExtensions.AddStateMachine<TBuilder>(IModuleBuilder<TBuilder>, Action<StateMachineOptions>) Method
Adds the State Machine Module to your application.
Namespace: DevExpress.ExpressApp.ApplicationBuilder
Assembly: DevExpress.ExpressApp.StateMachine.v24.1.dll
NuGet Package: DevExpress.ExpressApp.StateMachine
Declaration
public static IModuleBuilder<TBuilder> AddStateMachine<TBuilder>(
this IModuleBuilder<TBuilder> builder,
Action<StateMachineOptions> configureOptions = null
)
where TBuilder : IApplicationBuilder<TBuilder>
Parameters
Name | Type | Description |
---|---|---|
builder | IModuleBuilder<TBuilder> | Allows you to register and configure Modules in your application, and chain further Module registrations. |
Optional Parameters
Name | Type | Default | Description |
---|---|---|---|
configureOptions | Action<StateMachineOptions> | null | Options that you can use to configure the State Machine Module. |
Type Parameters
Name | Description |
---|---|
TBuilder | The IWinApplicationBuilder or IBlazorApplicationBuilder type. |
Returns
Type | Description |
---|---|
IModuleBuilder<TBuilder> | Allows you to register and configure Modules in your application, and chain further Module registrations. |
Remarks
The following example demonstrates how to use this method:
WinForms
File: MySolution.Win\Startup.cs.
using DevExpress.ExpressApp.ApplicationBuilder;
using DevExpress.ExpressApp.StateMachine.Xpo;
using DevExpress.ExpressApp.Win.ApplicationBuilder;
// ...
public class ApplicationBuilder : IDesignTimeApplicationFactory {
public static WinApplication BuildApplication(string connectionString) {
var builder = WinApplication.CreateBuilder();
builder.UseApplication<MySolutionWindowsFormsApplication>();
builder.Modules
// ...
.AddStateMachine(options => {
options.StateMachineStorageType = typeof(XpoStateMachine);
})
// ...
}
// ...
}
ASP.NET Core Blazor
File: MySolution.Blazor.Server\Startup.cs.
using DevExpress.ExpressApp.ApplicationBuilder;
using DevExpress.ExpressApp.StateMachine.Xpo;
using DevExpress.ExpressApp.Blazor.ApplicationBuilder;
// ...
public class Startup {
// ...
public void ConfigureServices(IServiceCollection services) {
// ...
services.AddXaf(Configuration, builder => {
builder.UseApplication<MySolutionBlazorApplication>();
builder.Modules
// ...
.AddStateMachine(options => {
options.StateMachineStorageType = typeof(XpoStateMachine);
})
// ...
});
// ...
}
}
See Also