elsa-core——1.Hello World:Console
2021-08-16 00:20
661 查看
github上有一个开源的工作流项目elsa,elsa-core是core语言的版本,其文档因为是英文,因此会让很多人不想看,或者是看不下去,从这篇文章开始我将开始对elsa-core的文档翻译成英文并分享出来,方便大家查看与学习。
以下为正文:
在本快速入门中,我们将了解一个执行工作流的最小控制台应用程序。
接下来我们将:
- 使用 Elsa 的 Workflow Builder API 以编程方式定义在控制台上显示文本“Hello World”的工作流定义。
- 运行工作流。
项目
创建一个名为 ElsaQuickstarts.ConsoleApp.HelloWorld 的新 .NET Core 控制台项目:
dotnet new console -n "ElsaQuickstarts.ConsoleApp.HelloWorld"
CD 到创建的项目文件夹中:
cd ElsaQuickstarts.ConsoleApp.HelloWorld
添加以下包:
dotnet add package Elsa dotnet add package Elsa.Activities.Console
工作流程
创建一个名为 HelloWorld.cs 的新文件并添加以下代码:
using Elsa.Activities.Console; using Elsa.Builders; namespace ElsaQuickstarts.ConsoleApp.HelloWorld { /// <summary> /// A basic workflow with just one WriteLine activity. /// </summary> public class HelloWorld : IWorkflow { public void Build(IWorkflowBuilder builder) => builder.WriteLine("Hello World!"); } }
上述工作流程只有一个步骤(也称为活动):WriteLine,它将一行文本写入标准输出(控制台)。
程序
打开 Program.cs 并将其内容替换为以下内容:
using System.Threading.Tasks; using Elsa.Services; using Microsoft.Extensions.DependencyInjection; namespace ElsaQuickstarts.ConsoleApp.HelloWorld { class Program { private static async Task Main() { // Create a service container with Elsa services. var services = new ServiceCollection() .AddElsa(options => options .AddConsoleActivities() .AddWorkflow<HelloWorld>()) .BuildServiceProvider(); // Get a workflow runner. var workflowRunner = services.GetRequiredService<IBuildsAndStartsWorkflow>(); // Run the workflow. await workflowRunner.BuildAndStartWorkflowAsync<HelloWorld>(); } } }
运行
运行程序并观察以下输出:
Hello world!
成功!您已成功创建并执行 Elsa 工作流程。
相关文章推荐
- asp.net core 5.0 中的 JsonConsole
- Adding appsettings.json to a .NET Core console app
- C++随笔:.NET CoreCLR之corleCLR核心探索之coreconsole(2)
- NLog在.NET Core Console Apps中的简单应用
- hadoop2.2.0 core-site.xml--HTTP web-consoles Authentication
- C++随笔:.NET CoreCLR之corleCLR核心探索之coreconsole(1)
- hadoop2.2.0 core-site.xml--HTTP web-consoles Authentication
- F~F~F~Fedora Core~e~e~e~
- 安装ORACLE后,改变计算机名称,导致OracleDBConsoleOrcl服务无法启动
- Linux C程序异常退出怎么办——core文件帮你忙
- 基于AspNet Core2.0(测试版) 开发框架,包含简单的个人博客Demo
- ABP官方文档(四十一)【ASP.NET Core】
- ASP.NET Core2利用MassTransit集成RabbitMQ
- Installing the Hyper-V Beta in a Core configuration(转载)
- ios中core Plot (2)
- ASP.NET Core 开发-中间件(Middleware)
- 在chrome console加入jquery库_IPLAYSEO BOLOG
- EntityFramework Core 学习系列(一)Creating Model
- pycharm运行在Python Console中运行而不是在Run窗口里运行【解决】
- uclinux-2008r1-rc8(bf561)内核的console(3):通过console输出信息