C# コード
C# は WebAssembly にコンパイルされた .NET 上で、Roslyn スクリプトエンジンによって実行されます。 ランタイムは Restorm に組み込まれているため、お使いのマシンに .NET SDK は不要です。
| シンボル | 役割 |
|---|---|
input | 入力ポートで受け取った値 |
vars | 実行変数の辞書 |
Console.Write / Console.WriteLine | 実行ログに書き込みます |
| 最後の式 | その値が result ポートに送られます |
コードは C# スクリプト(Roslyn スタイル)です。
外側のクラスや Main を書く必要はなく、文はトップレベルに置き、最後の式が結果になります。
using System.Linq;using System.Text.Json;
var doc = JsonDocument.Parse(input.ToString());var commandes = doc.RootElement.GetProperty("commandes").EnumerateArray();
var payees = commandes .Where(c => c.GetProperty("statut").GetString() == "payee") .ToList();
var total = payees.Sum(c => c.GetProperty("montant").GetDouble());
Console.WriteLine($"{payees.Count} commandes payées, total {total} €");
new { nombre = payees.Count, total }利用できるもの
Section titled “利用できるもの”.NET の 基本クラスライブラリ が使えます。System.Linq、
System.Text.Json、System.Text.RegularExpressions、
System.Security.Cryptography、System.Collections.Generic など。
C# 固有の制限
Section titled “C# 固有の制限”C# を選ぶのは、すでに C# で書かれた業務ロジックを再利用したいときや、 チームが C# のほうに慣れているときです。 何かを呼び出す必要があるときの選択肢ではありません。