跳到內容

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.LinqSystem.Text.JsonSystem.Text.RegularExpressionsSystem.Security.CryptographySystem.Collections.Generic……

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