En console app er en applikasjon som kjører i en terminal. Denne formen er praktisk for å kjøre workers, CLI-verktøy, eller andre applikasjoner som ikke trenger et grensesnitt.
Scaffolding:
dotnet new console -n MyConsoleApp
Outputen av et console app scaffold ser slik ut, og genererer to filer:
└── samples
└── MyConsoleApp
├── MyConsoleApp.csproj
└── Program.cs
MyConsoleApp.csproj
.csproj
-filer (prosjekter) er XML-filer som byggesystemet i .NET, MSBuild, forstår. Disse brukes til metadata og tilsvarer package.json
i node/npm.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
</Project>
<ImplicitUsings>enable</ImplicitUsings>
[docs]
Gjør at alle C#-filer du oppretter i prosjektet automatisk inkluderer noen globalt definerte using
-statements, så man slipper skrive disse manuelt i hver fil.
Default:
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
Program.cs
Program.cs er default entryfil i .NET og har alltid en statisk Main
-metode som tar argumenter (likt med Java).
Program.cs
public class Program
{
public static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
I nyere versjoner .NET er entryfilen minimal – uten klasse-definisjon og main-metode:
Program.cs
Console.WriteLine("Hello, World!");
Byggesystemet sørger for at koden kompileres til en kjørbar fil.
Bruk .NET SDKet (dotnet
) i samme mappe som prosjektfilen:
dotnet run
Hello, World!
I motsetning til node, så er det ikke nødvendig å kjøre en restore før build/run. Dette gjøres automatisk av byggesystemet.