Esercitazione: Creare un'applicazione console .NET con Visual Studio Code

Questa esercitazione illustra come creare ed eseguire un'applicazione console .NET usando Visual Studio Code e l'interfaccia della riga di comando di .NET. Le attività di progetto, ad esempio la creazione, la compilazione e l'esecuzione di un progetto, vengono eseguite usando l'interfaccia della riga di comando di .NET. È possibile seguire questa esercitazione con un editor di codice diverso ed eseguire comandi in un terminale, se si preferisce.

Prerequisiti

Creare l'app

Creare un progetto di app console .NET denominato "HelloWorld".

  1. Avviare Visual Studio Code.

  2. Selezionare File>Apri cartella (File>Apri... in macOS) dal menu principale.

  3. Nella finestra di dialogo Apri cartella creare una cartella HelloWorld e selezionarla. Fare quindi clic su Seleziona cartella (Apri in macOS).

    Il nome della cartella diventa il nome del progetto e il nome dello spazio dei nomi per impostazione predefinita. Il codice verrà aggiunto più avanti nell'esercitazione che presuppone che lo spazio dei nomi del progetto sia HelloWorld.

  4. Nella finestra di dialogo Si considerano attendibili gli autori dei file in questa cartella? selezionare Sì, si considerano attendibili gli autori. È possibile considerare attendibili gli autori perché questa cartella contiene solo i file generati da .NET e aggiunti o modificati dall'utente.

  5. Aprire il terminale in Visual Studio Code selezionando Visualizza>terminale dal menu principale.

    Il terminale viene aperto con il prompt dei comandi nella cartella HelloWorld.

  6. Nel Terminale immettere il comando seguente:

    dotnet new console --framework net8.0 --use-program-main
    

    Aprire il file Program.cs per visualizzare la semplice applicazione creata dal modello:

    namespace HelloWorld;
    
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }
    

    La prima volta che si apre un file .cs, Visual Studio Code richiede di aggiungere asset per compilare ed eseguire il debug dell'app. Selezionare , e Visual Studio Code crea una cartella vscode con file launch.json e tasks.json.

    Nota

    Se il prompt non viene visualizzato o se lo si chiude accidentalmente senza selezionare , seguire questa procedura per creare launch.json e tasks.json:

    • Selezionare Esegui>Aggiungi configurazione dal menu.
    • Selezionare .NET 5+ e .NET Core al prompt Selezionare l'ambiente.

    Il codice definisce una classe, Program, con un singolo metodo, Main, che accetta una matrice String come argomento. Main è il punto di ingresso dell'applicazione, ovvero il metodo chiamato automaticamente dal runtime quando viene avviata l'applicazione. Gli argomenti della riga di comando forniti all'avvio dell'applicazione sono disponibili nella matrice args. Il codice in Main chiama il metodo Console.WriteLine(String) per visualizzare un messaggio nella finestra della console.

    C# include una funzionalità denominata istruzioni di primo livello che consente di omettere la classe Program e il metodo Main. Questa esercitazione non usa questa funzionalità. Se lo usa nei propri programmi è una questione di preferenza di stile. Nel comando dotnet new che ha creato il progetto, l'opzione --use-program-main impedisce l'uso delle istruzioni di primo livello.

Eseguire l'app

Eseguire il comando seguente nel terminale:

dotnet run

Il programma visualizza "Hello, World!" e termina.

The dotnet run command

Migliorare l'app

Migliorare l'applicazione per richiedere all'utente il nome e visualizzarlo insieme alla data e all'ora.

  1. Aprire Program.cs.

  2. Sostituire il contenuto del metodo Main in Program.cs, ovvero la riga che chiama Console.WriteLine, con il codice seguente:

    Console.WriteLine("What is your name?");
    var name = Console.ReadLine();
    var currentDate = DateTime.Now;
    Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!");
    Console.Write($"{Environment.NewLine}Press any key to exit...");
    Console.ReadKey(true);
    

    Questo codice visualizza una richiesta nella finestra della console e attende che l'utente immetta una stringa seguita dalla chiave Invio. Archivia questa stringa in una variabile denominata name. Recupera inoltre il valore della proprietà DateTime.Now, contenente l'ora locale corrente, e lo assegna a una variabile denominata currentDate. E visualizza questi valori nella finestra della console. Viene infine visualizzato un prompt nella finestra della console e viene chiamato il metodo Console.ReadKey(Boolean) per attendere l'input dell'utente.

    NewLine è un modo indipendente dalla piattaforma e indipendente dal linguaggio per rappresentare un'interruzione di riga. È uguale a \n in C#.

    Il segno del dollaro ($) davanti a una stringa consente di inserire espressioni come nomi di variabile tra parentesi graffe nella stringa. Il valore dell'espressione viene inserito nella stringa al posto dell'espressione. Questa sintassi viene definita stringhe interpolate.

  3. Salva le modifiche.

    Importante

    In Visual Studio Code è necessario salvare in modo esplicito le modifiche. A differenza di Visual Studio, le modifiche ai file non vengono salvate automaticamente durante la compilazione e l'esecuzione di un'app.

  4. Eseguire di nuovo il programma:

    dotnet run
    
  5. Rispondere al prompt immettendo un nome e premendo il tasto INVIO.

    Terminal window with modified program output

  6. Premere un tasto qualsiasi per uscire dal programma.

Risorse aggiuntive

Passaggi successivi

In questa esercitazione è stata creata un'applicazione console .NET. Nell'esercitazione successiva si esegue il debug dell'app.

Questa esercitazione illustra come creare ed eseguire un'applicazione console .NET usando Visual Studio Code e l'interfaccia della riga di comando di .NET. Le attività di progetto, ad esempio la creazione, la compilazione e l'esecuzione di un progetto, vengono eseguite usando l'interfaccia della riga di comando di .NET. È possibile seguire questa esercitazione con un editor di codice diverso ed eseguire comandi in un terminale, se si preferisce.

Prerequisiti

Creare l'app

Creare un progetto di app console .NET denominato "HelloWorld".

  1. Avviare Visual Studio Code.

  2. Selezionare File>Apri cartella (File>Apri... in macOS) dal menu principale.

  3. Nella finestra di dialogo Apri cartella creare una cartella HelloWorld e selezionarla. Fare quindi clic su Seleziona cartella (Apri in macOS).

    Il nome della cartella diventa il nome del progetto e il nome dello spazio dei nomi per impostazione predefinita. Il codice verrà aggiunto più avanti nell'esercitazione che presuppone che lo spazio dei nomi del progetto sia HelloWorld.

  4. Nella finestra di dialogo Si considerano attendibili gli autori dei file in questa cartella? selezionare Sì, si considerano attendibili gli autori. È possibile considerare attendibili gli autori perché questa cartella contiene solo i file generati da .NET e aggiunti o modificati dall'utente.

  5. Aprire il terminale in Visual Studio Code selezionando Visualizza>terminale dal menu principale.

    Il terminale viene aperto con il prompt dei comandi nella cartella HelloWorld.

  6. Nel Terminale immettere il comando seguente:

    dotnet new console --framework net7.0
    

    Il modello di progetto crea una semplice applicazione che visualizza "Hello, World" nella finestra della console chiamando il metodo Console.WriteLine(String) in Program.cs.

    Console.WriteLine("Hello, World!");
    
  7. Sostituire il contenuto di Program.cs con il codice seguente:

    namespace HelloWorld
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Hello, World!");
            }
        }
    }
    

    La prima volta che si modifica un file .cs, Visual Studio Code richiede di aggiungere gli asset mancanti per compilare ed eseguire il debug dell'app. Selezionare , e Visual Studio Code crea una cartella vscode con file launch.json e tasks.json.

    Nota

    Se il prompt non viene visualizzato o se lo si chiude accidentalmente senza selezionare , seguire questa procedura per creare launch.json e tasks.json:

    • Selezionare Esegui>Aggiungi configurazione dal menu.
    • Selezionare .NET 5+ e .NET Core al prompt Selezionare l'ambiente.

    Il codice definisce una classe, Program, con un singolo metodo, Main, che accetta una matrice String come argomento. Main è il punto di ingresso dell'applicazione, ovvero il metodo chiamato automaticamente dal runtime quando viene avviata l'applicazione. Gli argomenti della riga di comando forniti all'avvio dell'applicazione sono disponibili nella matrice args.

    Nella versione più recente di C#, una nuova funzionalità denominata istruzioni di primo livello consente di omettere la classe Program e il metodo Main. La maggior parte dei programmi C# esistenti non usa istruzioni di primo livello, quindi questa esercitazione non usa questa nuova funzionalità. Ma è disponibile in C# 10 e se lo si usa nei programmi è una questione di preferenza di stile.

Eseguire l'app

Eseguire il comando seguente nel terminale:

dotnet run

Il programma visualizza "Hello, World!" e termina.

The dotnet run command

Migliorare l'app

Migliorare l'applicazione per richiedere all'utente il nome e visualizzarlo insieme alla data e all'ora.

  1. Aprire Program.cs.

  2. Sostituire il contenuto del metodo Main in Program.cs, ovvero la riga che chiama Console.WriteLine, con il codice seguente:

    Console.WriteLine("What is your name?");
    var name = Console.ReadLine();
    var currentDate = DateTime.Now;
    Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!");
    Console.Write($"{Environment.NewLine}Press any key to exit...");
    Console.ReadKey(true);
    

    Questo codice visualizza una richiesta nella finestra della console e attende che l'utente immetta una stringa seguita dalla chiave Invio. Archivia questa stringa in una variabile denominata name. Recupera inoltre il valore della proprietà DateTime.Now, contenente l'ora locale corrente, e lo assegna a una variabile denominata currentDate. E visualizza questi valori nella finestra della console. Viene infine visualizzato un prompt nella finestra della console e viene chiamato il metodo Console.ReadKey(Boolean) per attendere l'input dell'utente.

    NewLine è un modo indipendente dalla piattaforma e indipendente dal linguaggio per rappresentare un'interruzione di riga. Le alternative sono \n in C# e vbCrLf in Visual Basic.

    Il segno del dollaro ($) davanti a una stringa consente di inserire espressioni come nomi di variabile tra parentesi graffe nella stringa. Il valore dell'espressione viene inserito nella stringa al posto dell'espressione. Questa sintassi viene definita stringhe interpolate.

  3. Salva le modifiche.

    Importante

    In Visual Studio Code è necessario salvare in modo esplicito le modifiche. A differenza di Visual Studio, le modifiche ai file non vengono salvate automaticamente durante la compilazione e l'esecuzione di un'app.

  4. Eseguire di nuovo il programma:

    dotnet run
    
  5. Rispondere al prompt immettendo un nome e premendo il tasto INVIO.

    Terminal window with modified program output

  6. Premere un tasto qualsiasi per uscire dal programma.

Risorse aggiuntive

Passaggi successivi

In questa esercitazione è stata creata un'applicazione console .NET. Nell'esercitazione successiva si esegue il debug dell'app.

Questa esercitazione illustra come creare ed eseguire un'applicazione console .NET usando Visual Studio Code e l'interfaccia della riga di comando di .NET. Le attività di progetto, ad esempio la creazione, la compilazione e l'esecuzione di un progetto, vengono eseguite usando l'interfaccia della riga di comando di .NET. È possibile seguire questa esercitazione con un editor di codice diverso ed eseguire comandi in un terminale, se si preferisce.

Prerequisiti

Creare l'app

Creare un progetto di app console .NET denominato "HelloWorld".

  1. Avviare Visual Studio Code.

  2. Selezionare File>Apri cartella (File>Apri... in macOS) dal menu principale.

  3. Nella finestra di dialogo Apri cartella creare una cartella HelloWorld e selezionarla. Fare quindi clic su Seleziona cartella (Apri in macOS).

    Il nome della cartella diventa il nome del progetto e il nome dello spazio dei nomi per impostazione predefinita. Il codice verrà aggiunto più avanti nell'esercitazione che presuppone che lo spazio dei nomi del progetto sia HelloWorld.

  4. Nella finestra di dialogo Si considerano attendibili gli autori dei file in questa cartella? selezionare Sì, si considerano attendibili gli autori. È possibile considerare attendibili gli autori perché questa cartella contiene solo i file generati da .NET e aggiunti o modificati dall'utente.

  5. Aprire il terminale in Visual Studio Code selezionando Visualizza>terminale dal menu principale.

    Il terminale viene aperto con il prompt dei comandi nella cartella HelloWorld.

  6. Nel Terminale immettere il comando seguente:

    dotnet new console --framework net6.0 --use-program-main
    

    Il modello di progetto crea una semplice applicazione che visualizza "Hello, World" nella finestra della console chiamando il metodo Console.WriteLine(String) in Program.cs.

    namespace HelloWorld;
    
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello, World!");
        }
    }
    

    La prima volta che si modifica un file .cs, Visual Studio Code richiede di aggiungere gli asset mancanti per compilare ed eseguire il debug dell'app. Selezionare , e Visual Studio Code crea una cartella vscode con file launch.json e tasks.json.

    Nota

    Se il prompt non viene visualizzato o se lo si chiude accidentalmente senza selezionare , seguire questa procedura per creare launch.json e tasks.json:

    • Selezionare Esegui>Aggiungi configurazione dal menu.
    • Selezionare .NET 5+ e .NET Core al prompt Selezionare l'ambiente.

    Il codice definisce una classe, Program, con un singolo metodo, Main, che accetta una matrice String come argomento. Main è il punto di ingresso dell'applicazione, ovvero il metodo chiamato automaticamente dal runtime quando viene avviata l'applicazione. Gli argomenti della riga di comando forniti all'avvio dell'applicazione sono disponibili nella matrice args.

    Nella versione più recente di C#, una nuova funzionalità denominata istruzioni di primo livello consente di omettere la classe Program e il metodo Main. La maggior parte dei programmi C# esistenti non usa istruzioni di primo livello, quindi questa esercitazione non usa questa nuova funzionalità. Ma è disponibile in C# 10 e se lo si usa nei programmi è una questione di preferenza di stile. Nel comando dotnet new usato per creare il progetto, l'opzione --use-program-main ha impedito l'uso delle istruzioni di primo livello.

Eseguire l'app

Eseguire il comando seguente nel terminale:

dotnet run

Il programma visualizza "Hello, World!" e termina.

The dotnet run command

Migliorare l'app

Migliorare l'applicazione per richiedere all'utente il nome e visualizzarlo insieme alla data e all'ora.

  1. Aprire Program.cs.

  2. Sostituire il contenuto del metodo Main in Program.cs, ovvero la riga che chiama Console.WriteLine, con il codice seguente:

    Console.WriteLine("What is your name?");
    var name = Console.ReadLine();
    var currentDate = DateTime.Now;
    Console.WriteLine($"{Environment.NewLine}Hello, {name}, on {currentDate:d} at {currentDate:t}!");
    Console.Write($"{Environment.NewLine}Press any key to exit...");
    Console.ReadKey(true);
    

    Questo codice visualizza una richiesta nella finestra della console e attende che l'utente immetta una stringa seguita dalla chiave Invio. Archivia questa stringa in una variabile denominata name. Recupera inoltre il valore della proprietà DateTime.Now, contenente l'ora locale corrente, e lo assegna a una variabile denominata currentDate. E visualizza questi valori nella finestra della console. Viene infine visualizzato un prompt nella finestra della console e viene chiamato il metodo Console.ReadKey(Boolean) per attendere l'input dell'utente.

    NewLine è un modo indipendente dalla piattaforma e indipendente dal linguaggio per rappresentare un'interruzione di riga. Le alternative sono \n in C# e vbCrLf in Visual Basic.

    Il segno del dollaro ($) davanti a una stringa consente di inserire espressioni come nomi di variabile tra parentesi graffe nella stringa. Il valore dell'espressione viene inserito nella stringa al posto dell'espressione. Questa sintassi viene definita stringhe interpolate.

  3. Salva le modifiche.

    Importante

    In Visual Studio Code è necessario salvare in modo esplicito le modifiche. A differenza di Visual Studio, le modifiche ai file non vengono salvate automaticamente durante la compilazione e l'esecuzione di un'app.

  4. Eseguire di nuovo il programma:

    dotnet run
    
  5. Rispondere al prompt immettendo un nome e premendo il tasto INVIO.

    Terminal window with modified program output

  6. Premere un tasto qualsiasi per uscire dal programma.

Risorse aggiuntive

Passaggi successivi

In questa esercitazione è stata creata un'applicazione console .NET. Nell'esercitazione successiva si esegue il debug dell'app.