Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento. |
Scripting in C# con dotnet-script
Creare un progetto .NET per compiti piccoli e semplici è un po' eccessivo. dotnet-script semplifica le cose. Permette di eseguire il codice C# come un singolo file di script. Nessun metodo main, nessun .csproj e compilazione trasparente.
Per installare dotnet-script digitare nel terminale il seguente comando:
dotnet tool install -g dotnet-script
Creazione di uno script
dotnet-script è dotato di un comando di init per generare un semplice script.
Creare una cartella DotnetScript nella propria Home.
Aprire un terminale e spostarsi in questa cartella.
Digitare il seguente comando:
dotnet script init
Verano creati 2 file: main.csx e omnisharp.json.
omnisharp.json contiene le impostazioni dello script, come il framework di destinazione e i riferimenti a nuget consentiti.
main.csx è strutturato in modo da contenere un semplice esempio di Hello World funzionante. Contenuto
Verificare che lo script funzioni eseguendo il seguente comando:
./main.csx
L'output deve essere:
Hello World!
Modificare il file main.csx copiando e incollando il seguente contenuto:
1 #!/usr/bin/env dotnet-script 2 3 using System; 4 using System.Data; 5 6 Int16 nEta = 0; 7 if (Args.Count > 0) 8 nEta = Convert.ToInt16(Args[0]); 9 else 10 { 11 Console.WriteLine("L'età non è stata specificata"); 12 return; 13 } 14 DataTable dtable = new DataTable(); 15 dtable.Columns.Add("Nome", typeof(string)); 16 dtable.Columns.Add("Eta", typeof(Int16)); 17 dtable.Rows.Add("Silvia", 32); 18 dtable.Rows.Add("Roberto", 28); 19 dtable.Rows.Add("Leonardo", 25); 20 dtable.Rows.Add("Francesco", 59); 21 dtable.Rows.Add("Alessandro", 55); 22 dtable.Rows.Add("Lorenzo", 18); 23 dtable.Rows.Add("Mattia", 41); 24 dtable.Rows.Add("Tommaso", 62); 25 dtable.Rows.Add("Gabriele", 39); 26 dtable.Rows.Add("Federico", 20); 27 int n=0; 28 DataRow[] dtRows; 29 dtRows = dtable.Select("Eta<" + nEta, "Eta ASC"); 30 string strResult; 31 Console.WriteLine("Hanno meno di " + nEta + " anni"); 32 foreach(DataRow row in dtRows) 33 { 34 strResult = string.Format("{0, -15}Età: {1}", row["Nome"], row["Eta"]); 35 Console.WriteLine(strResult); 36 }
LAVORO IN CORSO
Per maggiori informazioni consultare il sito ufficiale.
