Kurz: Vytvoření šablony projektu
Pomocí .NET můžete vytvářet a nasazovat šablony, které generují projekty, soubory, i prostředky. Tento kurz je druhou částí série, která vás naučí, jak vytvořit, nainstalovat a odinstalovat šablony pro použití s příkazem dotnet new
.
Tip
Oficiální šablony .NET, které jsou dodávány se sadou .NET SDK, najdete v následujících úložištích:
Šablony | Úložiště |
---|---|
Konzola, knihovna tříd a šablony běžných položek | dotnet/sdk |
šablony ASP.NET a Blazor | dotnet/aspnetcore |
ASP.NET jednostrákové šablony aplikací | dotnet/spa-templates |
Šablony WPF | dotnet/wpf |
šablony model Windows Forms | dotnet/winforms |
Testování šablon | dotnet/test-templates |
Šablony MAUI | dotnet/maui |
Šablony nainstalované na vašem počítači můžete zobrazit spuštěním dotnet new list
příkazu.
V této části série se naučíte:
- Vytvořte zdroje šablony projektu.
- Vytvořte složku a soubor konfigurace šablony.
- Nainstalujte šablonu z cesty k souboru.
- Otestujte šablonu položky.
- Odinstalujte šablonu položky.
Požadavky
- Dokončete 1 . část této série kurzů.
- Otevřete terminál a přejděte do složky working\content .
Důležité
Tento článek je napsán pro .NET 7. Platí ale také pro .NET 6 a předchozí verze s jedním rozdílem: dotnet new
Syntaxe se liší. Příkazy list
, , install
search
a uninstall
dílčí příkazy by měly být --list
, --search
--install
, a --uninstall
možnosti, v uvedeném pořadí.
Například příkaz dotnet new install
v .NET 7 se stane dotnet new --install
v .NET 6. dotnet new --help
Pomocí příkazu zobrazíte seznam všech možností a dílčích příkazů.
Vytvoření šablony projektu
Šablony projektů vytvářejí projekty připravené ke spuštění, které uživatelům usnadňují zahájení práce se sadou kódu. .NET obsahuje několik šablon projektů, jako je konzolová aplikace nebo knihovna tříd. V tomto příkladu vytvoříte nový projekt konzolové aplikace, který nahradí standardní výstup konzoly "Hello World" výstupem, který běží asynchronně.
V terminálu přejděte do složky working\content a vytvořte novou podsložku s názvem consoleasync. Zadejte podsložku a spusťte dotnet new console
ji a vygenerujte standardní konzolovou aplikaci. Upravíte soubory vytvořené touto šablonou a vytvoříte novou šablonu.
working
└───content
└───consoleasync
consoleasync.csproj
Program.cs
Úprava souboru Program.cs
Otevřete soubor Program.cs. Standardní projekt konzoly nesynchronně zapisuje do výstupu konzoly, takže ho přidáme. Změňte kód na následující a uložte soubor:
// See https://aka.ms/new-console-template for more information
await Console.Out.WriteAsync("Hello World with C#");
Teď, když máte obsah vytvořené šablony, musíte vytvořit konfiguraci šablony v kořenové složce šablony.
Vytvoření konfigurace šablony
V tomto kurzu se složka šablony nachází v pracovní\content\consoleasync.
Šablony jsou rozpoznány rozhraním .NET, protože mají speciální složku a konfigurační soubor v kořenovém adresáři vaší složky šablony.
Nejprve vytvořte novou podsložku s názvem .template.config a zadejte ji. Pak vytvořte nový soubor s názvem template.json. Struktura složek by měla vypadat takto:
working
└───content
└───consoleasync
└───.template.config
template.json
Otevřete soubor template.json pomocí svého oblíbeného textového editoru a vložte následující kód JSON a uložte ho.
{
"$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"
}
}
Tento konfigurační soubor obsahuje všechna nastavení šablony. Můžete vidět základní nastavení, například name
a shortName
, ale existuje také tags/type
hodnota, která je nastavena na project
. Tím se šablona kategorizuje jako šablona projektu. Typ šablony, kterou vytvoříte, není nijak omezen. Tyto item
hodnoty project
jsou běžné názvy, které .NET doporučuje, aby uživatelé mohli snadno filtrovat typ šablony, kterou hledají.
Položka sourceName
je to, co je nahrazeno, když uživatel používá šablonu. Hodnota v konfiguračním sourceName
souboru se vyhledá v každém názvu souboru a obsahu souboru a ve výchozím nastavení se nahradí názvem aktuální složky. -n
Při předání nebo --name
parametru dotnet new
pomocí příkazu se zadaná hodnota použije místo názvu aktuální složky. V případě této šablony consoleasync
se nahradí v názvu souboru .csproj .
Položka classifications
představuje sloupec značek , který vidíte při spuštění dotnet new
a získání seznamu šablon. Uživatelé také můžou vyhledávat na základě značek klasifikace. Nezaměňujte tags
vlastnost v souboru template.json se seznamem classifications
značek. Jsou to dva různé koncepty, které jsou bohužel pojmenovány stejně. Úplné schéma pro soubor template.json se nachází v úložišti schémat JSON a je popsáno v referenčních informacích pro template.json. Další informace o souboru template.json najdete na wikiwebu šablon dotnet.
Teď, když máte platný soubor .template.config/template.json , je vaše šablona připravená k instalaci. Před instalací šablony se ujistěte, že odstraníte všechny další složky a soubory, které nechcete zahrnout do šablony, jako jsou složky přihrádky nebo obj . V terminálu přejděte do složky consoleasync a spusťte dotnet new install .\
instalaci šablony umístěné v aktuální složce. Pokud používáte operační systém Linux nebo macOS, použijte lomítko: dotnet new install ./
.
dotnet new install .\
Tento příkaz zobrazí seznam nainstalovaných šablon, které by měly zahrnovat vaše.
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
Otestování šablony projektu
Teď, když máte nainstalovanou šablonu projektu, ji otestujte.
Přejděte do testovací složky.
Vytvořte novou konzolovou aplikaci pomocí následujícího příkazu, který vygeneruje pracovní projekt, který můžete snadno otestovat pomocí
dotnet run
příkazu.dotnet new consoleasync -n MyProject
Zobrazí se následující výstup.
The template "Example templates: async project" was created successfully.
Spusťte projekt pomocí následujícího příkazu.
dotnet run
Zobrazí se následující výstup.
Hello World with C#
Blahopřejeme. Vytvořili jste a nasadili šablonu projektu pomocí .NET. V rámci přípravy na další část této série kurzů odinstalujte šablonu, kterou jste vytvořili. Nezapomeňte také odstranit všechny soubory z testovací složky. Tím se vrátíte k čistému stavu připravenému na další část této série kurzů.
Odinstalace šablony
V terminálu přejděte do složky consoleasync a spuštěním následujícího příkazu odinstalujte šablonu umístěnou v aktuální složce:
- Ve Windows:
dotnet new uninstall .\
- V Linuxu nebo macOS:
dotnet new uninstall ./
Tento příkaz zobrazí seznam odinstalovaných šablon, které by měly zahrnovat vaše.
Success: <root path>\working\content\consoleasync was uninstalled.
Kdykoli můžete použít dotnet new uninstall
seznam nainstalovaných balíčků šablon, včetně každého balíčku šablony, který příkaz odinstaluje.
Další kroky
V tomto kurzu jste vytvořili šablonu projektu. Pokud chcete zjistit, jak zabalit šablony položek i projektů do snadno použitelného souboru, pokračujte v této sérii kurzů.