Tartalomjegyzék

< .Net Core

.Net Core Konzol

Beszerzés

A .Net beszerzése:

Visual Studio Code

Telepítendő bővítmény:

Új C# alkalmazás készítése

mkdir app01
cd app01
dotnet new console 

Az app01 könyvtár létrehozható a dotnet parancs -o kapcsolójával:

dotnet new console -o app01
cd app01

Futtatás:

dotnet run

Keretrendszer megadása

dotnet new console --framework net7.0

Main() függvény nélkül

Program.cs
// See https://aka.ms/new-console-template for more information
Console.WriteLine("Hello, World!");

Figyelmeztetést kapunk:

dotnet run
/home/janos/.nuget/packages/microsoft.net.test.sdk/17.1.0-release-20220113-05/build/netcoreapp2.1/Microsoft.NET.Test.Sdk.Program.cs(4,41): warning CS7022: The entry point of the program is global code; ignoring 'AutoGeneratedProgram.Main(string[])' entry point. [/home/janos/dev/gyak/dotnet/app10/app10.csproj]

Szúrjuk be a következő sort az app01.csproj fájlba.

<GenerateProgramFile>false</GenerateProgramFile>
app01.csproj
<Project Sdk="Microsoft.NET.Sdk">
 
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net6.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <GenerateProgramFile>false</GenerateProgramFile>
  </PropertyGroup>
 
</Project>

Újabb futtatás után a figyelmeztetés eltűnik.

dotnet

Függőségek feloldása

Gépeljük be a következőt:

dotnet restore

Ez hozzáférést biztosít a .NET Core függőségekhez.

Futtatás

Futtassuk a Helló Világ programot. Gépeljük be a következőt:

dotnet run

A programkód futtatható így is:

cd bin/Debug/netcoreapp1.1/
dotnet prog01.dll

A futtatható állomány valójában egy .dll kiterjesztésű fájl. Készíthetünk adott platformra is futtatható állományt:

dotnet restore -r debian.8-x64
dotnet build -c release -r debian.8-x64
dotnet publish -c release -r debian.8-x64

Ennek hatására létrejön a következő ELF bináris:

bin/release/netcoreapp1.1/debian.8-x64/prog01

Más platformokra a -r kapcsoló után beírható paraméterek:

A Main() metódus

A .NET Core 3.1, illetve a .NET 5.0 óta nem kötelező a programban a Main() metódus megléte. A használata azonban nincs kizárva.

Program.cs
class Program {
   static void Main() {
       Console.WriteLine("Helló Világ!");
   }
}

Függvények használata

Dolgozhatunk csak függvényekkel:

Program.cs
static void message() {
    Console.WriteLine("Üdv!");
}
 
message();

A static módosító nem kötelező.

Main metódus generálása

dotnet new console --use-program-main

Keretrendszer verziójának megadása:

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

Linkek