Refactor workflow and update EF Core config

Removed unnecessary namespace in OrderBatchProcessor workflow and set a descriptive name for the workflow sequence. Updated the EF Core configuration in Program.cs to use SQLite with a specified connection string and ensure Order types are accessible in CSharp expressions.
This commit is contained in:
Sipke Schoorstra 2024-03-14 10:00:06 +01:00
parent a0cda3830c
commit b8cb2caf78
2 changed files with 10 additions and 4 deletions

View file

@ -1,19 +1,25 @@
using Elsa.EntityFrameworkCore.Extensions;
using Elsa.EntityFrameworkCore.Modules.Management;
using Elsa.EntityFrameworkCore.Modules.Runtime;
using Elsa.Extensions;
using Elsa.Samples.AspNet.BatchProcessing.Models;
var builder = WebApplication.CreateBuilder(args);
var sqliteConnectionString = "Data Source=App_Data/elsa.db";
builder.Services.AddElsa(elsa =>
{
elsa.UseWorkflowManagement(management => management.UseEntityFrameworkCore());
elsa.UseWorkflowRuntime(runtime => runtime.UseEntityFrameworkCore());
elsa.UseWorkflowManagement(management => management.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)));
elsa.UseWorkflowRuntime(runtime => runtime.UseEntityFrameworkCore(ef => ef.UseSqlite(sqliteConnectionString)));
elsa.UseWorkflowsApi();
elsa.UseHttp();
elsa.UseScheduling();
elsa.UseJavaScript(javaScript => javaScript.AllowClrAccess = true);
elsa.UseCSharp();
elsa.UseCSharp(csharp =>
{
csharp.Assemblies.Add(typeof(Program).Assembly);
csharp.Namespaces.Add(typeof(Order).Namespace!);
});
elsa.UseLiquid();
elsa.UseIdentity(identity =>

View file

@ -4,7 +4,6 @@ using Elsa.Samples.AspNet.BatchProcessing.Models;
using Elsa.Workflows;
using Elsa.Workflows.Activities;
using Elsa.Workflows.Contracts;
using Elsa.Workflows.Memory;
namespace Elsa.Samples.AspNet.BatchProcessing.Workflows;
@ -16,6 +15,7 @@ public class OrderBatchProcessor : WorkflowBase
/// <inheritdoc />
protected override void Build(IWorkflowBuilder builder)
{
builder.Name = "Order Batch Processor - Sequence";
var orders = builder.WithVariable<IAsyncEnumerable<ICollection<Order>>>().WithMemoryStorage();
builder.Root = new Sequence
{