expressappframework-devexpress-dot-expressapp-dot-applicationbuilder-dot-statemachineapplicationbuilderextensions-dot-addstatemachine-tbuilder-x28-imodulebuilder-tbuilder-action-statemachineoptions-x29.md
Adds the State Machine Module to your application.
Namespace : DevExpress.ExpressApp.ApplicationBuilder
Assembly : DevExpress.ExpressApp.StateMachine.v25.2.dll
NuGet Package : DevExpress.ExpressApp.StateMachine
public static IModuleBuilder<TBuilder> AddStateMachine<TBuilder>(
this IModuleBuilder<TBuilder> builder,
Action<StateMachineOptions> configureOptions = null
)
where TBuilder : IApplicationBuilder<TBuilder>
<ExtensionAttribute>
Public Shared Function AddStateMachine(Of TBuilder As IApplicationBuilder(Of TBuilder))(
builder As IModuleBuilder(Of TBuilder),
configureOptions As Action(Of StateMachineOptions) = Nothing
) As IModuleBuilder(Of TBuilder)
| Name | Type | Description |
|---|---|---|
| builder | IModuleBuilder<TBuilder> |
Allows you to register and configure Modules in your application, and chain further Module registrations.
|
| Name | Type | Default | Description |
|---|---|---|---|
| configureOptions | Action<StateMachineOptions> | null |
Options that you can use to configure the State Machine Module.
|
| Name | Description |
|---|---|
| TBuilder |
The IWinApplicationBuilder or IBlazorApplicationBuilder type.
|
| Type | Description |
|---|---|
| IModuleBuilder<TBuilder> |
Allows you to register and configure Modules in your application, and chain further Module registrations.
|
The following example demonstrates how to use this method:
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);
})
// ...
}
// ...
}
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
StateMachineApplicationBuilderExtensions Class