以下 XLANG/s 运算符可用于编排表达式。 它们紧密遵循 C# 中这些运算符的功能。
| 操作员 | DESCRIPTION | 示例: | 
|---|---|---|
| checked( ) | 算术溢出时引发错误 | checked(x = y * 1000) | 
| 未选中() | 忽略算术溢出 | unchecked(x = y * 1000) | 
| 新 | 创建类的实例 | myObject = new MyClass; | 
| 类型 | 类型检索 | myMapType = typeof(myMap) | 
| 成功 | 测试是否成功完成事务性范围或业务流程编排 | succeeded(<当前范围或服务中子事务的事务 ID>) | 
| 存在 | 测试消息上下文属性是否存在 | BTS.RetryCount 存在 Message_In | 
| + | 一元加号 | +(int x) | 
| - | 一元减号 | -(int x) | 
| ! | 逻辑否定 | myBool! | 
| ~ | 按位取反 | x = ~y | 
| () | 强制转换 | (bool) myInt | 
| * | 次 | 权重 = MyMsg.numOrders * 20 | 
| / | 除以 | x / y | 
| + | 加 | x + y | 
| - | 减去 | x - y | 
| << | 向左移动 | x << 2 | 
| >> | 向右移动 | x >> 2 | 
| < | 小于 | 如果 (MyMsg.numOrders < 10)... | 
| > | 大于 | 如果 (MyMsg.numOrders > 10)... | 
| <= | 小于等于 | 如果 (MyMsg.numOrders <= 10)... | 
| >= | 大于等于 | 如果 (MyMsg.numOrders >= 10)... | 
| == | 等于 | 如果 (MyMsg.numOrders == 10)... | 
| != | 不等于 | 如果 (MyMsg.numOrders != 10)... | 
| & | 和 | 如果 (myByte 和 255)... | 
| ^ | 独占或 | 如果 (myByte ^ 1)... | 
| | | 或 | 如果(myByte | 1)... | 
| && | 条件和 | 如果 (MyMsg.numOrders > 10) && (MyMsg.numOrders < 100) | 
| || | 条件或 | If (MyMsg.numOrders < 10) ||(MyMsg.numOrders > 100) | 
| // | 评论 | 这是评论 | 
注释
规则在常规表达式和筛选表达式之间有所不同,这些表达式与 Receive 形状一起使用。