Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento článek se vztahuje na: ✔️ .NET Core 2.1 SDK a novější verze
V tomto kurzu se naučíte, jak vytvořit a zabalit nástroj .NET. Rozhraní příkazového řádku .NET umožňuje vytvořit konzolovou aplikaci jako nástroj, který můžou ostatní instalovat a spouštět. Nástroje .NET jsou balíčky NuGet nainstalované z rozhraní příkazového řádku .NET. Další informace o nástrojích najdete v tématu Přehled nástrojů .NET.
Nástroj, který vytvoříte, je konzolová aplikace, která přebírá zprávu jako vstup a zobrazuje zprávu spolu s řádky textu, které vytvářejí obrázek robota.
Toto je první ze tří kurzů. V tomto kurzu vytvoříte a zabalíte nástroj. V dalších dvou kurzech použijete nástroj jako globální nástroj a použijete ho jako místní nástroj. Postupy pro vytvoření nástroje jsou stejné bez ohledu na to, jestli ho používáte jako globální nástroj nebo jako místní nástroj.
Požadavky
.NET SDK 6.0.100 nebo novější verze
Tento kurz používá sadu .NET SDK 6.0, ale globální nástroje jsou k dispozici od sady .NET Core SDK 2.1. Místní nástroje jsou dostupné od verze .NET Core SDK 3.0.
Textový editor nebo editor kódu podle vašeho výběru.
Vytvoření projektu
Otevřete příkazový řádek a vytvořte složku s názvem úložiště.
Přejděte do složky úložiště a zadejte následující příkaz:
dotnet new console -n microsoft.botsay -f net6.0Příkaz vytvoří novou složku s názvem microsoft.botsay ve složce úložiště .
Poznámka:
Pro účely tohoto kurzu vytvoříte nástroj, který cílí na .NET 6.0. Pokud chcete cílit na jinou architekturu
-f|--framework, změňte možnost. Pokud chcete cílit na více architektur, změňteTargetFrameworkprvek naTargetFrameworkselement v souboru projektu, jak je znázorněno v následujícím příkladu:<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFrameworks>net8.0;net6.0</TargetFrameworks> </PropertyGroup> </Project>Přejděte do složky microsoft.botsay .
cd microsoft.botsay
Přidání kódu
Otevřete soubor Program.cs v editoru kódu.
Nahraďte kód v Program.cs následujícím kódem:
using System.Reflection; namespace microsoft.botsay; internal class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } }Direktiva
using System.Reflection;je nutná kódem, který přidáte v dalším kroku.Nahraďte metodu
Mainnásledujícím kódem pro zpracování argumentů příkazového řádku pro aplikaci.static void Main(string[] args) { if (args.Length == 0) { var versionString = Assembly.GetEntryAssembly()? .GetCustomAttribute<AssemblyInformationalVersionAttribute>()? .InformationalVersion .ToString(); Console.WriteLine($"botsay v{versionString}"); Console.WriteLine("-------------"); Console.WriteLine("\nUsage:"); Console.WriteLine(" botsay <message>"); return; } ShowBot(string.Join(' ', args)); }Pokud nejsou předány žádné argumenty, zobrazí se krátká zpráva nápovědy. V opačném případě jsou všechny argumenty zřetězeny do jednoho řetězce a vytištěny voláním
ShowBotmetody, kterou vytvoříte v dalším kroku.Přidejte novou metodu s názvem
ShowBot, která přebírá parametr řetězce. Metoda vytiskne zprávu a obrázek robota pomocí řádků textu.static void ShowBot(string message) { string bot = $"\n {message}"; bot += @" __________________ \ \ .... ....' .... .......... .............'..'.. ................'..'..... .......'..........'..'..'.... ........'..........'..'..'..... .'....'..'..........'..'.......'. .'..................'... ...... . ......'......... ..... . _ __ ...... .. # ## ...... .... . ....... ...... ....... ............ ................ ...................... ........................'................ ......................'..'...... ....... .........................'..'..... ....... ........ ..'.............'..'.... .......... ..'..'... ...............'....... .......... ...'...... ...... .......... ...... ....... ........... ....... ........ ...... ....... '...'.'. '.'.'.' .... ....... .....'.. ..'..... .. .......... ..'........ ............ .............. ............. '.............. ...........'.. .'.'............ ............... .'.'............. .............'.. ..'..'........... ............... .'.............. ......... .............. ..... "; Console.WriteLine(bot); }Uložte změny.
Otestování aplikace
Spusťte projekt a prohlédněte si výstup. Zkuste tyto varianty na příkazovém řádku zobrazit různé výsledky:
dotnet run
dotnet run -- "Hello from the bot"
dotnet run -- Hello from the bot
Všechny argumenty po -- předání oddělovače do vaší aplikace.
Zabalení nástroje
Než budete moct aplikaci zabalit a distribuovat jako nástroj, musíte upravit soubor projektu.
Otevřete soubor microsoft.botsay.csproj a přidejte na konec
<PropertyGroup>uzlu tři nové uzly XML:<PackAsTool>true</PackAsTool> <ToolCommandName>botsay</ToolCommandName> <PackageOutputPath>./nupkg</PackageOutputPath><ToolCommandName>je volitelný prvek, který určuje příkaz, který vyvolá nástroj po instalaci. Pokud tento prvek není zadaný, název příkazu pro nástroj je název sestavení, což je obvykle název souboru projektu bez přípony .csproj .Poznámka:
Zvolte jedinečnou hodnotu pro
<ToolCommandName>. Nepoužívejte přípony souborů (například.exenebo.cmd), protože nástroj je nainstalovaný jako hostitel aplikace a příkaz by neměl obsahovat příponu. Tím zabráníte konfliktům s existujícími příkazy a zajistíte hladký průběh instalace.<PackageOutputPath>je volitelný prvek, který určuje, kde se vytvoří balíček NuGet. Balíček NuGet je to, co rozhraní .NET CLI používá k instalaci vašeho nástroje.Soubor projektu teď vypadá jako v následujícím příkladu:
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net6.0</TargetFramework> <PackAsTool>true</PackAsTool> <ToolCommandName>botsay</ToolCommandName> <PackageOutputPath>./nupkg</PackageOutputPath> </PropertyGroup> </Project>Spuštěním příkazu dotnet pack vytvořte balíček NuGet:
dotnet packSoubor microsoft.botsay.1.0.0.nupkg se vytvoří ve složce identifikované
<PackageOutputPath>hodnotou ze souboru microsoft.botsay.csproj , což je v tomto příkladu složka ./nupkg .Pokud chcete nástroj veřejně uvolnit, můžete ho nahrát do
https://www.nuget.org. Jakmile je nástroj dostupný na NuGetu, můžou vývojáři nástroj nainstalovat pomocí příkazu dotnet tool install . Pro účely tohoto kurzu nainstalujete balíček přímo z místní složky nupkg , takže nemusíte balíček nahrávat do NuGetu.
Řešení problémů
Pokud se při sledování kurzu zobrazí chybová zpráva, přečtěte si téma Řešení potíží s používáním nástrojů .NET.
Další kroky
V tomto kurzu jste vytvořili konzolovou aplikaci a zabalili ji jako nástroj. Pokud se chcete dozvědět, jak nástroj používat jako globální nástroj, přejděte k dalšímu kurzu.
Pokud chcete, můžete přeskočit kurz globálních nástrojů a přejít přímo na kurz místních nástrojů.