Elsa Workflow Studio 3:表达式用变量及If活动问题求助
Elsa 3 变量调用与If活动使用方案
一、HTTP响应中正确输出变量默认值
Elsa 3的表达式有明确的类型区分,选对类型+正确语法就能解决500错误:
优先用Liquid表达式(语法简单,不易出错):
- 确认变量是工作流级变量(比如命名为
DemoVar,默认值设为"测试内容") - 打开
HTTP Response活动,将Content字段的表达式类型切换为Liquid - 在内容框输入:
{{ Variables.DemoVar }} - 保存后触发工作流,即可返回变量的默认值
- 确认变量是工作流级变量(比如命名为
如果用C#表达式:
- 表达式类型选
C# - 内容框输入:
context.GetVariable<string>("DemoVar")
注意:变量名大小写敏感,类型要和定义的一致(比如字符串类型用<string>,数字用<int>),否则会触发500错误
- 表达式类型选
二、If活动表达式使用示例
1. Liquid表达式场景(推荐)
- 判断数字变量
Score是否及格:
表达式类型选Liquid,条件框输入:{{ Variables.Score > 60 }} - 判断字符串变量
UserName是否为空:
条件框输入:{{ Variables.UserName != "" }}
2. C#表达式场景
- 判断变量
Age是否大于18:
表达式类型选C#,条件框输入:context.GetVariable<int>("Age") > 18 - 判断HTTP请求的Body参数
IsEnabled是否为true:
条件框输入:context.Input.Body.IsEnabled == true
3. 结合HTTP Query参数的判断
比如判断请求参数type是否等于"admin":
- Liquid表达式:
{{ Input.Query.type == "admin" }} - C#表达式:
context.Input.Query["type"] == "admin"
内容的提问来源于stack exchange,提问作者ChristianW92
相关产品推荐
相关产品推荐

