Tutorial: Creación de una aplicación de consola de .NET con Visual Studio Code

En este tutorial se muestra cómo crear y ejecutar una aplicación de consola de .NET mediante Visual Studio Code y la CLI de .NET. Las tareas de proyecto, como crear, compilar y ejecutar un proyecto, se realizan mediante la CLI de .NET. Puede seguir este tutorial con un editor de código diferente y ejecutar comandos en un terminal si lo prefiere.

Requisitos previos

Creación de la aplicación

Cree un proyecto de aplicación de consola de .NET denominado "HelloWorld".

  1. Inicie Visual Studio Code.

  2. Seleccione Archivo>Abrir carpeta (Archivo>Abrir... en macOS) en el menú principal.

  3. En el cuadro de diálogo Abrir carpeta, cree una carpeta HelloWorld y selecciónela. A continuación, haga clic en Seleccionar carpeta (Abrir en macOS).

    De forma predeterminada, el nombre de la carpeta se convierte en el nombre del proyecto y del espacio de nombres. Más adelante en el tutorial, agregará código que supone que el espacio de nombres del proyecto es HelloWorld.

  4. En el cuadro de diálogo ¿Confía en los autores de los archivos de esta carpeta? , seleccione Yes, I trust the authors (Sí, confío en los autores). Puede confiar en los creadores, ya que esta carpeta solo tiene archivos generados por .NET y que usted ha agregado o modificado.

  5. Para abrir el Terminal en Visual Studio Code, seleccione Ver>Terminal en el menú principal.

    Se abre el Terminal con el símbolo del sistema en la carpeta HelloWorld.

  6. En el Terminal, escriba este comando:

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

    Abra el archivo Program.cs para ver la aplicación sencilla creada por la plantilla:

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

    La primera vez que abre un archivo .cs, Visual Studio Code le pide que agregue los recursos que faltan para compilar y depurar la aplicación. Seleccione ; Visual Studio Code crea una carpeta .vscode con los archivos launch.json y tasks.json.

    Nota

    Si no recibe el mensaje de confirmación o si lo descarta por accidente sin seleccionar , siga estos pasos para crear launch.json y tasks.json:

    • Seleccione Ejecutar>Agregar configuración en el menú.
    • Seleccione .NET 5+ y .NET Core en el mensaje Seleccionar entorno.

    El código define una clase, Program, con un solo método, Main, que toma una matriz de String como argumento. Main es el punto de entrada de la aplicación, el método que se llama automáticamente mediante el tiempo de ejecución cuando inicia la aplicación. Los argumentos de línea de comandos proporcionados cuando se inicia la aplicación están disponibles en la matriz args. El código de Main llama al método Console.WriteLine(String) para mostrar un mensaje en la ventana de la consola.

    C# tiene una característica denominada instrucciones de nivel superior que permite omitir la clase Program y el método Main. Este tutorial no usa esta característica. Si se usa en los programas es una cuestión de preferencia de estilo. En el comando dotnet new que ha creado el proyecto, la opción --use-program-main ha impedido que se usaran instrucciones de nivel superior.

Ejecutar la aplicación

Ejecute este comando en el Terminal:

dotnet run

El programa muestra "Hola mundo" y finaliza.

The dotnet run command

Mejora de la aplicación

Mejore la aplicación para pedir su nombre al usuario y mostrarlo con la fecha y la hora.

  1. Abra Program.cs.

  2. Reemplace el contenido del método Main en Program.cs, que es la línea que llama a Console.WriteLine, por este código:

    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);
    

    Este código muestra un mensaje en la ventana de la consola y espera a que el usuario escriba una cadena y, luego, presione Entrar. Almacena esta cadena en una variable denominada name. También recupera el valor de la propiedad DateTime.Now, que contiene la hora local actual, y lo asigna a una variable denominada currentDate. Asimismo, muestra estos valores en la ventana de la consola. Por último, muestra un mensaje en la ventana de la consola y llama al método Console.ReadKey(Boolean) para esperar a la entrada del usuario.

    NewLine es una manera independiente de la plataforma y del lenguaje de representar un salto de línea. Lo mismo sucede con \n en C#.

    El signo de dólar ($) delante de una cadena permite colocar expresiones como nombres de variable entre llaves en la cadena. El valor de la expresión se inserta en la cadena en lugar de la expresión. Esta sintaxis se conoce como cadenas interpoladas.

  3. Guarde los cambios.

    Importante

    En Visual Studio Code, tiene que guardar los cambios explícitamente. A diferencia de Visual Studio, los cambios de los archivos no se guardan automáticamente al compilar y ejecutar una aplicación.

  4. Ejecute el programa otra vez:

    dotnet run
    
  5. Responda a la solicitud escribiendo un nombre y presionando la tecla Entrar.

    Terminal window with modified program output

  6. Presione cualquier tecla para salir de la aplicación.

Recursos adicionales

Pasos siguientes

En este tutorial, ha creado una aplicación de consola de .NET. En el siguiente tutorial, depurará la aplicación.

En este tutorial se muestra cómo crear y ejecutar una aplicación de consola de .NET mediante Visual Studio Code y la CLI de .NET. Las tareas de proyecto, como crear, compilar y ejecutar un proyecto, se realizan mediante la CLI de .NET. Puede seguir este tutorial con un editor de código diferente y ejecutar comandos en un terminal si lo prefiere.

Requisitos previos

Creación de la aplicación

Cree un proyecto de aplicación de consola de .NET denominado "HelloWorld".

  1. Inicie Visual Studio Code.

  2. Seleccione Archivo>Abrir carpeta (Archivo>Abrir... en macOS) en el menú principal.

  3. En el cuadro de diálogo Abrir carpeta, cree una carpeta HelloWorld y selecciónela. A continuación, haga clic en Seleccionar carpeta (Abrir en macOS).

    De forma predeterminada, el nombre de la carpeta se convierte en el nombre del proyecto y del espacio de nombres. Más adelante en el tutorial, agregará código que supone que el espacio de nombres del proyecto es HelloWorld.

  4. En el cuadro de diálogo ¿Confía en los autores de los archivos de esta carpeta? , seleccione Yes, I trust the authors (Sí, confío en los autores). Puede confiar en los creadores, ya que esta carpeta solo tiene archivos generados por .NET y que usted ha agregado o modificado.

  5. Para abrir el Terminal en Visual Studio Code, seleccione Ver>Terminal en el menú principal.

    Se abre el Terminal con el símbolo del sistema en la carpeta HelloWorld.

  6. En el Terminal, escriba este comando:

    dotnet new console --framework net7.0
    

    La plantilla de proyecto crea una aplicación sencilla que muestra "Hola mundo" en la ventana de consola al llamar al método Console.WriteLine(String) en Program.cs.

    Console.WriteLine("Hello, World!");
    
  7. Reemplace el contenido de Program.cs por el código siguiente:

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

    La primera vez que edita un archivo .cs, Visual Studio Code le pide que agregue los recursos que faltan para compilar y depurar la aplicación. Seleccione ; Visual Studio Code crea una carpeta .vscode con los archivos launch.json y tasks.json.

    Nota

    Si no recibe el mensaje de confirmación o si lo descarta por accidente sin seleccionar , siga estos pasos para crear launch.json y tasks.json:

    • Seleccione Ejecutar>Agregar configuración en el menú.
    • Seleccione .NET 5+ y .NET Core en el mensaje Seleccionar entorno.

    El código define una clase, Program, con un solo método, Main, que toma una matriz de String como argumento. Main es el punto de entrada de la aplicación, el método que se llama automáticamente mediante el tiempo de ejecución cuando inicia la aplicación. Los argumentos de línea de comandos proporcionados cuando se inicia la aplicación están disponibles en la matriz args.

    En la versión más reciente de C#, una nueva característica denominada instrucciones de nivel superior permite omitir la clase Program y el método Main. La mayoría de los programas de C# existentes no usan instrucciones de nivel superior, por lo que en este tutorial no se usa esta nueva característica. Pero está disponible en C# 10 y si se usa en los programas es una cuestión de preferencia de estilo.

Ejecutar la aplicación

Ejecute este comando en el Terminal:

dotnet run

El programa muestra "Hola mundo" y finaliza.

The dotnet run command

Mejora de la aplicación

Mejore la aplicación para pedir su nombre al usuario y mostrarlo con la fecha y la hora.

  1. Abra Program.cs.

  2. Reemplace el contenido del método Main en Program.cs, que es la línea que llama a Console.WriteLine, por este código:

    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);
    

    Este código muestra un mensaje en la ventana de la consola y espera a que el usuario escriba una cadena y, luego, presione Entrar. Almacena esta cadena en una variable denominada name. También recupera el valor de la propiedad DateTime.Now, que contiene la hora local actual, y lo asigna a una variable denominada currentDate. Asimismo, muestra estos valores en la ventana de la consola. Por último, muestra un mensaje en la ventana de la consola y llama al método Console.ReadKey(Boolean) para esperar a la entrada del usuario.

    NewLine es una manera independiente de la plataforma y del lenguaje de representar un salto de línea. Las alternativas son \n en C# y vbCrLf en Visual Basic.

    El signo de dólar ($) delante de una cadena permite colocar expresiones como nombres de variable entre llaves en la cadena. El valor de la expresión se inserta en la cadena en lugar de la expresión. Esta sintaxis se conoce como cadenas interpoladas.

  3. Guarde los cambios.

    Importante

    En Visual Studio Code, tiene que guardar los cambios explícitamente. A diferencia de Visual Studio, los cambios de los archivos no se guardan automáticamente al compilar y ejecutar una aplicación.

  4. Ejecute el programa otra vez:

    dotnet run
    
  5. Responda a la solicitud escribiendo un nombre y presionando la tecla Entrar.

    Terminal window with modified program output

  6. Presione cualquier tecla para salir de la aplicación.

Recursos adicionales

Pasos siguientes

En este tutorial, ha creado una aplicación de consola de .NET. En el siguiente tutorial, depurará la aplicación.

En este tutorial se muestra cómo crear y ejecutar una aplicación de consola de .NET mediante Visual Studio Code y la CLI de .NET. Las tareas de proyecto, como crear, compilar y ejecutar un proyecto, se realizan mediante la CLI de .NET. Puede seguir este tutorial con un editor de código diferente y ejecutar comandos en un terminal si lo prefiere.

Requisitos previos

Creación de la aplicación

Cree un proyecto de aplicación de consola de .NET denominado "HelloWorld".

  1. Inicie Visual Studio Code.

  2. Seleccione Archivo>Abrir carpeta (Archivo>Abrir... en macOS) en el menú principal.

  3. En el cuadro de diálogo Abrir carpeta, cree una carpeta HelloWorld y selecciónela. A continuación, haga clic en Seleccionar carpeta (Abrir en macOS).

    De forma predeterminada, el nombre de la carpeta se convierte en el nombre del proyecto y del espacio de nombres. Más adelante en el tutorial, agregará código que supone que el espacio de nombres del proyecto es HelloWorld.

  4. En el cuadro de diálogo ¿Confía en los autores de los archivos de esta carpeta? , seleccione Yes, I trust the authors (Sí, confío en los autores). Puede confiar en los creadores, ya que esta carpeta solo tiene archivos generados por .NET y que usted ha agregado o modificado.

  5. Para abrir el Terminal en Visual Studio Code, seleccione Ver>Terminal en el menú principal.

    Se abre el Terminal con el símbolo del sistema en la carpeta HelloWorld.

  6. En el Terminal, escriba este comando:

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

    La plantilla de proyecto crea una aplicación sencilla que muestra "Hola mundo" en la ventana de consola al llamar al método Console.WriteLine(String) en Program.cs.

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

    La primera vez que edita un archivo .cs, Visual Studio Code le pide que agregue los recursos que faltan para compilar y depurar la aplicación. Seleccione ; Visual Studio Code crea una carpeta .vscode con los archivos launch.json y tasks.json.

    Nota

    Si no recibe el mensaje de confirmación o si lo descarta por accidente sin seleccionar , siga estos pasos para crear launch.json y tasks.json:

    • Seleccione Ejecutar>Agregar configuración en el menú.
    • Seleccione .NET 5+ y .NET Core en el mensaje Seleccionar entorno.

    El código define una clase, Program, con un solo método, Main, que toma una matriz de String como argumento. Main es el punto de entrada de la aplicación, el método que se llama automáticamente mediante el tiempo de ejecución cuando inicia la aplicación. Los argumentos de línea de comandos proporcionados cuando se inicia la aplicación están disponibles en la matriz args.

    En la versión más reciente de C#, una nueva característica denominada instrucciones de nivel superior permite omitir la clase Program y el método Main. La mayoría de los programas de C# existentes no usan instrucciones de nivel superior, por lo que en este tutorial no se usa esta nueva característica. Pero está disponible en C# 10 y si se usa en los programas es una cuestión de preferencia de estilo. En el comando dotnet new que usó para crear el proyecto, la opción --use-program-main impidió que se usaran instrucciones de nivel superior.

Ejecutar la aplicación

Ejecute este comando en el Terminal:

dotnet run

El programa muestra "Hola mundo" y finaliza.

The dotnet run command

Mejora de la aplicación

Mejore la aplicación para pedir su nombre al usuario y mostrarlo con la fecha y la hora.

  1. Abra Program.cs.

  2. Reemplace el contenido del método Main en Program.cs, que es la línea que llama a Console.WriteLine, por este código:

    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);
    

    Este código muestra un mensaje en la ventana de la consola y espera a que el usuario escriba una cadena y, luego, presione Entrar. Almacena esta cadena en una variable denominada name. También recupera el valor de la propiedad DateTime.Now, que contiene la hora local actual, y lo asigna a una variable denominada currentDate. Asimismo, muestra estos valores en la ventana de la consola. Por último, muestra un mensaje en la ventana de la consola y llama al método Console.ReadKey(Boolean) para esperar a la entrada del usuario.

    NewLine es una manera independiente de la plataforma y del lenguaje de representar un salto de línea. Las alternativas son \n en C# y vbCrLf en Visual Basic.

    El signo de dólar ($) delante de una cadena permite colocar expresiones como nombres de variable entre llaves en la cadena. El valor de la expresión se inserta en la cadena en lugar de la expresión. Esta sintaxis se conoce como cadenas interpoladas.

  3. Guarde los cambios.

    Importante

    En Visual Studio Code, tiene que guardar los cambios explícitamente. A diferencia de Visual Studio, los cambios de los archivos no se guardan automáticamente al compilar y ejecutar una aplicación.

  4. Ejecute el programa otra vez:

    dotnet run
    
  5. Responda a la solicitud escribiendo un nombre y presionando la tecla Entrar.

    Terminal window with modified program output

  6. Presione cualquier tecla para salir de la aplicación.

Recursos adicionales

Pasos siguientes

En este tutorial, ha creado una aplicación de consola de .NET. En el siguiente tutorial, depurará la aplicación.