Roslyn, il nuovo compilatore open-source per i linguaggi C# 6 e Visual Basic 14, include, tra le altre funzionalità, un motore di scripting utile per leggere ed interpretare una sequenza di istruzioni, che possiamo passare come stringhe, e che verranno elaborate a runtime.
Per sfruttare questa funzionalità dobbiamo, come prima cosa, installare il pacchetto Microsoft.CodeAnalysis.Scripting da NuGet. Supponiamo di avere il seguente blocco di codice:
int result = await CSharpScript.EvaluateAsync<int>("1 + 2");
In questo caso, abbiamo sfruttato il motore di scripting di C# per elaborare una espressione matematica, il cui valore di ritorno vogliamo essere un intero.
Allo stesso modo, è possibile chiamare vere e proprie righe di codice, oppure funzioni specifiche (avendo cura di includere i namespace corretti):
CSharpScript.EvaluateAsync("Console.WriteLine(\"Hello world!\")", ScriptOptions.Default.AddImports("System"));
Così facendo, siamo andati a stampare sulla console "Hello World!" attraverso Roslyn.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Generare la software bill of material (SBOM) in GitHub
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Creare una libreria CSS universale: Clip-path
Usare lo spread operator con i collection initializer in C#
Utilizzare Model as a Service su Microsoft Azure
Migliorare la sicurezza dei prompt con Azure AI Studio
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Gestire domini wildcard in Azure Container Apps
Utilizzare Azure Cosmos DB con i vettori
Effettuare il refresh dei dati di una QuickGrid di Blazor
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Utilizzare il trigger SQL con le Azure Function