式における演算子の使用
オーケストレーションの式では次の XLANG/s 演算子を使用できます。 C# の対応する演算子の機能にほぼ準拠しています。
演算子 | 説明 | 例 |
---|---|---|
checked() | 算術オーバーフローでエラーを発生 | checked(x = y * 1000) |
unchecked() | 算術オーバーフローを無視する | unchecked(x = y * 1000) |
new | クラスのインスタンスを作成する | myObject = new MyClass; |
typeof | 型の取得 | myMapType = typeof(myMap) |
succeeded() | トランザクション スコープまたはオーケストレーションの正常な完了をテストする | succeeded(<現在のスコープまたはサービス>の子トランザクションのトランザクション ID) |
exists | メッセージ コンテキスト プロパティの存在をテスト | BTS.RetryCount exists Message_In |
+ | 単項プラス | +(int x) |
- | 単項マイナス | -(int x) |
! | 論理否定 | !myBool |
~ | ビットごとの補数 | x = ~y |
() | キャスト | (bool) myInt |
* | times | Weight = MyMsg.numOrders * 20 |
/ | で割った | x / y |
+ | plus | x + y |
- | minus | x - y |
<< | shift left | x << 2 |
>> | 右にシフト | x >> 2 |
< | 次の値未満 | If (MyMsg.numOrders < 10)... |
> | より大きい | If (MyMsg.numOrders > 10)... |
<= | 以下 | If (MyMsg.numOrders <= 10)... |
>= | 以上 | If (MyMsg.numOrders >= 10)... |
== | 等しい | If (MyMsg.numOrders == 10)... |
!= | 等しくない | If (MyMsg.numOrders != 10)... |
& | および | If (myByte & 255)... |
^ | 排他的 OR | If (myByte ^ 1)... |
| | または | If (myByte | 1)... |
&& | 条件 AND | If (MyMsg.numOrders > 10) && (MyMsg.numOrders < 100) |
|| | 条件 OR | If (MyMsg.numOrders < 10) ||(MyMsg.numOrders > 100) |
// | コメント | //これはコメントです。 |
注意
規則は、一般的な式と 、Receive 図形で使用されるフィルター式によって異なります。