Megosztás a következőn keresztül:


Oktatóanyag: Projektsablon létrehozása

A .NET használatával projekteket, fájlokat és erőforrásokat létrehozó sablonokat hozhat létre és helyezhet üzembe. Ez az oktatóanyag egy sorozat második része, amely bemutatja, hogyan hozhat létre, telepíthet és távolíthat el sablonokat a dotnet new paranccsal való használatra.

Jótanács

A .NET SDK-val szállított hivatalos .NET-sablonok az alábbi adattárakban találhatók:

Sablonok Raktár
Konzol, osztálytár és gyakori elemsablonok dotnet/sdk
ASP.NET és Blazor-sablonok dotnet/aspnetcore
ASP.NET egyoldalas alkalmazássablonok dotnet/spa-templates
WPF-sablonok dotnet/wpf
Windows Forms-sablonok dotnet/winforms
Tesztsablonok dotnet/test-templates
MAUI-sablonok dotnet/maui

A számítógépen telepített sablonokat a dotnet new list parancs futtatásával tekintheti meg.

A sorozat ezen részében megtanulhatja, hogyan:

  • Projektsablon erőforrásainak létrehozása.
  • Hozza létre a sablon konfigurációs mappát és fájlt.
  • Telepítsen egy sablont egy fájl elérési útvonaláról.
  • Elemsablon tesztelése.
  • Elemsablon eltávolítása.

Előfeltételek

  • .NET 9 vagy újabb verzió.

  • Töltse ki az oktatóanyag-sorozat 1. részét .

  • Nyisson meg egy terminált, és keresse meg a munka\tartalom mappát.

Projektsablon létrehozása

A projektsablonok használatra kész projekteket hoznak létre, amelyek megkönnyítik a felhasználók számára, hogy egy működő kódkészlettel kezdjenek. A .NET tartalmaz néhány projektsablont, például egy konzolalkalmazást vagy egy osztálytárat. Ebben a példában egy új konzolalkalmazás-projektet hoz létre, amely a standard "Hello World" konzolkimenetet aszinkron módon futóra cseréli.

A terminálban lépjen a working\content mappába, és hozzon létre egy új, consoleasync nevű almappát. Lépjen be az almappába, és futtassa dotnet new console a szokásos konzolalkalmazás generálásához. A sablon által létrehozott fájlokat szerkessze, hogy új sablont hozzon létre.

working
└───content
    └───consoleasync
            consoleasync.csproj
            Program.cs

Program.cs módosítása

Nyissa meg a Program.cs fájlt. A standard konzolprojekt nem aszinkron módon ír a konzol kimenetére, ezért adja hozzá. Módosítsa a kódot a következőre, és mentse a fájlt:

// See https://aka.ms/new-console-template for more information
await Console.Out.WriteAsync("Hello World with C#");

Most, hogy létrehozta a sablon tartalmát, létre kell hoznia a sablon konfigurációját a sablon gyökérmappájában.

A sablonkonfiguráció létrehozása

Ebben az oktatóanyagban a sablonmappa a working\content\consoleasync helyen található.

A .NET azért ismeri fel a sablonokat, mert egy speciális mappával és konfigurációs fájllal rendelkeznek a sablonmappa gyökerénél.

Először hozzon létre egy .template.config nevű új almappát, és lépjen be abba. Ezután hozzon létre egy template.jsonnevű új fájlt. A mappaszerkezetnek így kell kinéznie:

working
└───content
    └───consoleasync
        └───.template.config
                template.json

Nyissa meg a template.json a kedvenc szövegszerkesztőjével, és illessze be a következő json-kódba, és mentse.

{
  "$schema": "http://json.schemastore.org/template",
  "author": "Me",
  "classifications": [ "Common", "Console" ],
  "identity": "ExampleTemplate.AsyncProject",
  "name": "Example templates: async project",
  "shortName": "consoleasync",
  "sourceName":"consoleasync",
  "tags": {
    "language": "C#",
    "type": "project"
  }
}

Ez a konfigurációs fájl tartalmazza a sablon összes beállítását. Megtekintheti az alapbeállításokat, mint például name és shortName, de van egy tags/type érték is, amely project-re van állítva. Ez "projekt" sablonként kategorizálja a sablont. Nincs korlátozás a létrehozott sablon típusára. A item és project értékek olyan általános nevek, amelyeket a .NET javasol, hogy a felhasználók könnyen szűrhessék a keresett sablon típusát.

Amikor a felhasználó használja a sablont, az sourceName elemet cseréljük le. A konfigurációs fájl értékét sourceName a rendszer minden fájlnévben és fájltartalomban megkeresi, és alapértelmezés szerint az aktuális mappa nevére cseréli a rendszer. Amikor a parancs átadja a -n--name paramétertdotnet new, a rendszer a megadott értéket használja az aktuális mappanév helyett. Ebben az esetben a sablon consoleasync a .csproj fájl nevében lesz lecserélve.

A(z) classifications elem azt a címkék oszlopot jelenti, amely akkor látható, amikor a dotnet new fut, és megkapja a sablonok listáját. A felhasználók besorolási címkék alapján is kereshetnek. Ne keverje össze a tagstemplate.json fájl tulajdonságát a classifications címkék listájával. Két különböző fogalom, amelyek sajnos ugyanazt a nevet viselik. A template.json fájl teljes sémája a JSON-sématárolóban található, és a template.jsonhivatkozásában található. A template.json fájlról további információt a dotnet templating wikijében talál.

Most, hogy rendelkezik egy érvényes .template.config/template.json fájllal, a sablon készen áll a telepítésre. A sablon telepítése előtt mindenképpen törölje a sablonban nem kívánt további mappákat és fájlokat, például a bin vagy obj mappákat. A terminálban keresse meg a consoleasync mappát, és futtassa dotnet new install .\ az aktuális mappában található sablon telepítéséhez. Ha Linux vagy macOS operációs rendszert használ, használjon perjelet: dotnet new install ./.

dotnet new install .\

Ez a parancs megjeleníti a telepített sablonok listáját, amelynek tartalmaznia kell az Önét is.

The following template packages will be installed:
   <root path>\working\content\consoleasync

Success: <root path>\working\content\consoleasync installed the following templates:
Templates                                         Short Name               Language          Tags
--------------------------------------------      -------------------      ------------      ----------------------
Example templates: async project                  consoleasync             [C#]              Common/Console

A projektsablon tesztelése

Most, hogy telepített egy projektsablont, tesztelje.

  1. Nyissa meg a tesztmappát .

  2. Hozzon létre egy új konzolalkalmazást a következő paranccsal, amely létrehoz egy működő projektet, amelyet egyszerűen tesztelhet a dotnet run paranccsal.

    dotnet new consoleasync -n MyProject
    

    A következő kimenetet kapja.

    The template "Example templates: async project" was created successfully.
    
  3. Futtassa a projektet az alábbi paranccsal.

    dotnet run
    

    A következő kimenetet kapja.

    Hello World with C#
    

Gratulálok! Létrehozott és üzembe helyezett egy projektsablont a .NET-tel. Az oktatóanyag-sorozat következő részének előkészítésekor távolítsa el a létrehozott sablont. Mindenképpen törölje az összes fájlt a tesztmappából is. Ezzel visszakerül egy tiszta állapotba, amely készen áll az oktatóanyag-sorozat következő részére.

A sablon eltávolítása

A terminálban lépjen a consoleasync mappára, és futtassa a következő parancsot az aktuális mappában található sablon eltávolításához:

  • Windows rendszeren: dotnet new uninstall .\
  • Linux vagy macOS rendszeren: dotnet new uninstall ./

Ez a parancs megjeleníti az eltávolított sablonok listáját, amelynek tartalmaznia kell az Önét is.

Success: <root path>\working\content\consoleasync was uninstalled.

dotnet new uninstall Bármikor megtekintheti a telepített sabloncsomagok listáját, beleértve az egyes sabloncsomagok esetében az eltávolításhoz szükséges parancsot is.

Következő lépések

Ebben az oktatóanyagban létrehozott egy projektsablont. Ha szeretné megtudni, hogyan csomagolhatja be az elemet és a projektsablonokat egy könnyen használható fájlba, folytassa ezt az oktatóanyag-sorozatot.