diff --git a/src/samples/aspnet/Elsa.Samples.Web1/Elsa.Samples.Web1.csproj b/src/samples/aspnet/Elsa.Samples.Web1/Elsa.Samples.Web1.csproj index f67f9f6ca..f7a700659 100644 --- a/src/samples/aspnet/Elsa.Samples.Web1/Elsa.Samples.Web1.csproj +++ b/src/samples/aspnet/Elsa.Samples.Web1/Elsa.Samples.Web1.csproj @@ -8,6 +8,7 @@ + diff --git a/src/samples/aspnet/Elsa.Samples.Web1/Program.cs b/src/samples/aspnet/Elsa.Samples.Web1/Program.cs index 1691bf5bd..4ef3bb311 100644 --- a/src/samples/aspnet/Elsa.Samples.Web1/Program.cs +++ b/src/samples/aspnet/Elsa.Samples.Web1/Program.cs @@ -10,6 +10,7 @@ using Elsa.Modules.AzureServiceBus.Activities; using Elsa.Modules.AzureServiceBus.Extensions; using Elsa.Modules.Http; using Elsa.Modules.Http.Extensions; +using Elsa.Modules.JavaScript.Activities; using Elsa.Modules.Quartz.Services; using Elsa.Modules.Scheduling.Activities; using Elsa.Modules.Scheduling.Extensions; @@ -55,6 +56,7 @@ services options.Workflows.Add(nameof(CompositeActivitiesWorkflow), new CompositeActivitiesWorkflow()); options.Workflows.Add(nameof(SendMessageWorkflow), new SendMessageWorkflow()); options.Workflows.Add(nameof(ReceiveMessageWorkflow), new ReceiveMessageWorkflow()); + options.Workflows.Add(nameof(RunJavaScriptWorkflow), new RunJavaScriptWorkflow()); }); // Testing only: allow client app to connect from anywhere. @@ -73,6 +75,7 @@ services .AddActivity() .AddActivity() .AddActivity() + .AddActivity() ; // Register scripting languages. diff --git a/src/samples/aspnet/Elsa.Samples.Web1/Workflows/RunJavaScriptWorkflow.cs b/src/samples/aspnet/Elsa.Samples.Web1/Workflows/RunJavaScriptWorkflow.cs new file mode 100644 index 000000000..d5346f178 --- /dev/null +++ b/src/samples/aspnet/Elsa.Samples.Web1/Workflows/RunJavaScriptWorkflow.cs @@ -0,0 +1,29 @@ +using Elsa.Activities.Console; +using Elsa.Activities.Workflows; +using Elsa.Contracts; +using Elsa.Models; +using Elsa.Modules.JavaScript.Activities; +using Elsa.Runtime.Contracts; + +namespace Elsa.Samples.Web1.Workflows; + +public class RunJavaScriptWorkflow : IWorkflow +{ + public void Build(IWorkflowDefinitionBuilder workflow) + { + var scriptResult = new Variable(); + + workflow.WithRoot(new Sequence + { + Variables = { scriptResult }, + Activities = + { + new RunJavaScript("1 + 1") + { + Result = new Output(scriptResult) + }, + new WriteLine(context => $"Result: {scriptResult.Get(context)}") + } + }); + } +} \ No newline at end of file