Skip to content

Latest commit

 

History

History
90 lines (63 loc) · 2.24 KB

CONSOLE.md

File metadata and controls

90 lines (63 loc) · 2.24 KB

Console apps

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:

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

Kjøre appen

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.