Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Programmazione/CSharp/Script"
Differenze tra le versioni 4 e 10 (in 6 versioni)
Versione 4 del 03/01/2023 20.04.02
Dimensione: 4004
Commento: revisione 1
Versione 10 del 04/01/2023 01.36.53
Dimensione: 4256
Commento: Pubblicazione guida
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from rafbor/dotnet-script
Linea 4: Linea 5:
<>Include(NuoviStrumentiWiki/PaginaDiProva)>>
Linea 10: Linea 10:
Questa illustra come creare script in '''C#''' con lo strumento '''dotnet-script'''. Questa guida spiega come creare [[Programmazione/Script|script]] in '''C#''' con lo strumento '''dotnet-script'''.
Linea 14: Linea 14:
##da qui = Installazione =
Linea 16: Linea 16:
Prerequisito: '''.NET SDK''' deve essere installato.  0. Se non presente, installare '''.NET SDK''', come indicato in [[https://learn.microsoft.com/it-it/dotnet/core/install/linux-ubuntu|questa guida]].
Linea 18: Linea 18:
Per installare '''dotnet-script''' digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{  0. Per installare '''dotnet-script''' digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
Linea 21: Linea 21:
Linea 24: Linea 25:
Linea 25: Linea 27:
Linea 26: Linea 29:
Linea 29: Linea 33:
 Verano creati 2 file: `main.csx` e `omnisharp.json`.  Verrano creati due file: `omnisharp.json` e `main.csx`.
Linea 31: Linea 35:
  * `main.csx` è strutturato in modo da contenere un semplice esempio di `Hello World` funzionante. Contenuto{{{#!cplusplus   * `main.csx` è strutturato in modo da contenere un semplice esempio di `Hello World` funzionante. Il contenuto sarà simile al seguente:{{{#!cplusplus
Linea 35: Linea 39:
 0. Su Linux, gli script possono essere eseguiti direttamente come se fossero degli eseguibili quindi verificare che lo script funzioni eseguendo il seguente comando:{{{
0. Su Linux gli script possono essere eseguiti direttamente come se fossero degli eseguibili. Verificare che lo script funzioni eseguendo il seguente comando:{{{
Linea 38: Linea 43:
 L'output deve essere:{{{  L'output dov essere:{{{
Linea 42: Linea 47:
 0. Andiamo oltre e sfruttiamo le potenzialità di .NET con un esempio che creerà un array di persone (`nome` ed `età`). Allo script verrà passato un parametro, memorizzato nella variabile `Args` e recuperato nella variabile `nEta`, quindi lo script filtrerà le persone che hanno meno di `nEta` anni, ordinate per età.<<BR>>  0. Di seguito un esempio di come sfruttare le potenzialità di '''.NET''', creando un array di persone (`nome` ed `età`). Allo script verrà passato un parametro, memorizzato nella variabile `Args` e recuperato nella variabile `nEta`. Quindi lo script filtrerà le persone che hanno meno di `nEta` anni, ordinate per età.<<BR>>
Linea 81: Linea 86:
 
Linea 99: Linea 105:
Il modo interattivo consente di fornire singoli blocchi di codice '''C#''' e di eseguirli non appena si preme '''Invio'''.{{{ Il modo interattivo consente di fornire singoli blocchi di codice '''C#''' e di eseguirli non appena si preme '''Invio''':{{{
Linea 105: Linea 111:
Per maggiori informazioni consultare il [[https://github.com/dotnet-script/dotnet-script|repository del progetto]].
Per maggiori informazioni consultare la [[https://github.com/dotnet-script/dotnet-script|pagina GitHub]] del progetto.

= Ulteriori risorse =

 * [[Programmazione/CSharp|Guida C#
]]
Linea 108: Linea 119:
CategoryNuoviDocumenti CategoryProgrammazione


Guida verificata con Ubuntu: 22.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida spiega come creare script in C# con lo strumento dotnet-script.

Spesso non è conveniente creare un progetto per .NET per compiti piccoli e/o semplici. In questi casi può risultare utile dotnet-script che permette di eseguire il codice C# come un singolo file di script, senza nessun metodo main, nessun .csproj e compilazione trasparente.

Installazione

  1. Se non presente, installare .NET SDK, come indicato in questa guida.

  2. 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.

  1. Creare una cartella DotnetScript nella propria Home.

  2. Aprire un terminale e spostarsi in questa cartella.

  3. Digitare il seguente comando:

    dotnet script init

    Verrano creati due file: omnisharp.json e main.csx.

    • 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. Il contenuto sarà simile al seguente:

         1 #!/usr/bin/env dotnet-script
         2 Console.WriteLine("Hello world!");
      
  4. Su Linux gli script possono essere eseguiti direttamente come se fossero degli eseguibili. Verificare che lo script funzioni eseguendo il seguente comando:

    ./main.csx

    L'output dovrà essere:

    Hello World!
  5. Di seguito un esempio di come sfruttare le potenzialità di .NET, creando un array di persone (nome ed età). Allo script verrà passato un parametro, memorizzato nella variabile Args e recuperato nella variabile nEta. Quindi lo script filtrerà le persone che hanno meno di nEta anni, ordinate per età.
    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 }
    
  6. Eseguire lo script con il seguente comando:

    ./main.csx 50

    L'output sarà:

    Hanno meno di 50 anni
    Lorenzo        Età: 18
    Federico       Età: 20
    Leonardo       Età: 25
    Roberto        Età: 28
    Silvia         Età: 32
    Gabriele       Età: 39
    Mattia         Età: 41

Modo REPL (Read-Evaluate-Print-Loop)

Il modo REPL ("modo interattivo") viene avviato eseguendo dotnet-script senza alcun argomento.

Il modo interattivo consente di fornire singoli blocchi di codice C# e di eseguirli non appena si preme Invio:

~$ dotnet script
> var x = 1;
> x+x
2

Per maggiori informazioni consultare la pagina GitHub del progetto.

Ulteriori risorse


CategoryProgrammazione