跳到內容

C# 程式碼

C# 透過編譯成 WebAssembly 的 .NET 執行,搭配 Roslyn 腳本引擎。這個 runtime 已內嵌在 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 }

.NET 的基底類別庫:System.Linq、System.Text.Json、 System.Text.RegularExpressions、System.Security.Cryptography、 System.Collections.Generic……

當您想重複使用已經用 C# 寫好的商業邏輯,或您的團隊對它比較熟悉時,就該選這個 語言 — 而不是在您需要呼叫外部服務的時候。