Tartalomjegyzék
.Net Core Konzol
- Szerző: Sallai András
- Copyright © 2017, Sallai András
- Szerkesztve: 2017, 2019, 2021, 2022, 2023
- Licenc: CC BY-SA 4.0
- Web: https://szit.hu
Beszerzés
A .Net beszerzése:
Visual Studio Code
Telepítendő bővítmény:
- C#
- dotnet
Ú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