Gå til indholdet

Konsolapplikationer

I materialet bruges konsolapplikationer til at afprøve kode, og lidt forvirrende er der to forskellige versioner: med top-level statements (script version) og uden top-level statements (traditionel version).

Information til undervisere

Det er vigtigt at kursisten prøver selv - få dem til at kode!!

Konsolapplikation uden Top-Level Statements

Traditionelt har en konsolapplikation i C# en Main metode i en klasse. Her er et eksempel på en simpel konsolapplikation uden top-level statements:

using System;

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

Konsolapplikation med Top-Level Statements

C# 9 introducerede top-level statements, som forenkler koden ved at fjerne behovet for en Main metode og en indkapslende klasse. Her er et eksempel på en konsolapplikation med top-level statements:

using System;

Console.WriteLine("Hello World!");

Denne version er god til helt små projekter hvor namespace med videre ikke er så vigtigt.

Avanceret: Asynkron Konsolapplikation - ikke vigtigt for begyndere

I mere avanceret kode skabe asynkrone applikationer og her bruges en anden skabelon hvor Main metoden skal have returtypen Task. Her er et eksempel på en asynkron konsolapplikation uden top-level statements:

using System;
using System.Threading.Tasks;

namespace ConsoleApp
{
    class Program
    {
        static async Task Main(string[] args)
        {
            await Console.Out.WriteLineAsync("Hello World!");
        }
    }
}

Og her er et eksempel på en asynkron konsolapplikation med top-level statements:

using System;
using System.Threading.Tasks;

await Console.Out.WriteLineAsync("Hello World!");

Visual Studio Code

I Visual Studio Code kan du vælge mellem de to versioner ved at skabe et projekt i terminalen.

Følgende skaber den “simple” version:

dotnet new console -o myApp

og følgende skaber den “traditionelle” version:

dotnet new console --use-program-main

Visual Studio

I Visual Studio kan du vælge mellem de to versioner ved at skabe et projekt af typen Console application, angive navn med videre, og så angive hvilken version du ønsker i checkboksen “Do not use Top-Level Statements”:

Vælg af konsol applikation
  • Hvis der ikke sættes kryds skabes en traditionel konsol applikation uden top-level statements.
  • Hvis der sættes kryds skabes en script baseres konsol applikation med top-level statements.

Info

Så snart du er lidt øvet så brug konsol applikationer uden top-level statements (den traditionelle form med en klasse Program og en statisk Main-metode).