Share via


Zelfstudie: Een .NET-hulpprogramma maken met behulp van de .NET CLI

Dit artikel is van toepassing op: ✔️ .NET Core 2.1 SDK en latere versies

In deze zelfstudie leert u hoe u een .NET-hulpprogramma maakt en verpakt. Met de .NET CLI kunt u een consoletoepassing maken als een hulpprogramma, dat anderen kunnen installeren en uitvoeren. .NET-hulpprogramma's zijn NuGet-pakketten die worden geïnstalleerd vanuit de .NET CLI. Zie Overzicht van .NET-hulpprogramma's voor meer informatie over hulpprogramma's.

Het hulpprogramma dat u maakt, is een consoletoepassing die een bericht als invoer neemt en het bericht samen met tekstregels weergeeft die de afbeelding van een robot maken.

Dit is de eerste in een reeks van drie zelfstudies. In deze zelfstudie maakt en verpakt u een hulpprogramma. In de volgende twee zelfstudies gebruikt u het hulpprogramma als een globaal hulpprogramma en gebruikt u het hulpprogramma als een lokaal hulpprogramma. De procedures voor het maken van een hulpprogramma zijn hetzelfde, ongeacht of u het gebruikt als een globaal hulpprogramma of als een lokaal hulpprogramma.

Vereisten

  • .NET SDK 6.0.100 of een latere versie.

    In deze zelfstudie wordt gebruikgemaakt van .NET SDK 6.0, maar er zijn globale hulpprogramma's beschikbaar vanaf .NET Core SDK 2.1. Lokale hulpprogramma's zijn beschikbaar vanaf .NET Core SDK 3.0.

  • Een teksteditor of code-editor naar keuze.

Een project maken

  1. Open een opdrachtprompt en maak een map met de naam opslagplaats.

  2. Ga naar de opslagplaatsmap en voer de volgende opdracht in:

    dotnet new console -n microsoft.botsay -f net6.0
    

    Met de opdracht maakt u een nieuwe map met de naam microsoft.botsay onder de map opslagplaats .

    Notitie

    Voor deze zelfstudie maakt u een hulpprogramma dat is gericht op .NET 6.0. Als u een ander framework wilt gebruiken, wijzigt u de -f|--framework optie. Als u meerdere frameworks wilt targeten, wijzigt u het TargetFramework -element in een TargetFrameworks -element in het projectbestand, zoals wordt weergegeven in het volgende voorbeeld:

    <Project Sdk="Microsoft.NET.Sdk">
      <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFrameworks>net8.0;net6.0</TargetFrameworks>
      </PropertyGroup>
    </Project>
    
  3. Navigeer naar de map microsoft.botsay .

    cd microsoft.botsay
    

Code toevoegen

  1. Open het bestand Program.cs met uw code-editor.

  2. Vervang de code in Program.cs door de volgende code:

    using System.Reflection;
    
    namespace microsoft.botsay;
    
    internal class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
    

    De using System.Reflection; instructie is nodig per code die u in de volgende stap toevoegt.

  3. Vervang de Main methode door de volgende code om de opdrachtregelargumenten voor de toepassing te verwerken.

    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));
    }
    

    Als er geen argumenten worden doorgegeven, wordt een kort Help-bericht weergegeven. Anders worden alle argumenten samengevoegd tot één tekenreeks en afgedrukt door de ShowBot methode aan te roepen die u in de volgende stap maakt.

  4. Voeg een nieuwe methode toe met de naam ShowBot die een tekenreeksparameter gebruikt. De methode drukt het bericht en een afbeelding van een robot af met behulp van tekstregels.

    static void ShowBot(string message)
    {
        string bot = $"\n        {message}";
        bot += @"
        __________________
                          \
                           \
                              ....
                              ....'
                               ....
                            ..........
                        .............'..'..
                     ................'..'.....
                   .......'..........'..'..'....
                  ........'..........'..'..'.....
                 .'....'..'..........'..'.......'.
                 .'..................'...   ......
                 .  ......'.........         .....
                 .    _            __        ......
                ..    #            ##        ......
               ....       .                 .......
               ......  .......          ............
                ................  ......................
                ........................'................
               ......................'..'......    .......
            .........................'..'.....       .......
         ........    ..'.............'..'....      ..........
       ..'..'...      ...............'.......      ..........
      ...'......     ...... ..........  ......         .......
     ...........   .......              ........        ......
    .......        '...'.'.              '.'.'.'         ....
    .......       .....'..               ..'.....
       ..       ..........               ..'........
              ............               ..............
             .............               '..............
            ...........'..              .'.'............
           ...............              .'.'.............
          .............'..               ..'..'...........
          ...............                 .'..............
           .........                        ..............
            .....
    ";
        Console.WriteLine(bot);
    }
    
  5. Sla uw wijzigingen op.

De toepassing testen

Voer het project uit en bekijk de uitvoer. Probeer de volgende variaties op de opdrachtregel om verschillende resultaten te zien:

dotnet run
dotnet run -- "Hello from the bot"
dotnet run -- Hello from the bot

Alle argumenten na het -- scheidingsteken worden doorgegeven aan uw toepassing.

Het hulpprogramma verpakken

Voordat u de toepassing als hulpprogramma kunt inpakken en distribueren, moet u het projectbestand wijzigen.

  1. Open het bestand microsoft.botsay.csproj en voeg drie nieuwe XML-knooppunten toe aan het einde van het <PropertyGroup> knooppunt:

    <PackAsTool>true</PackAsTool>
    <ToolCommandName>botsay</ToolCommandName>
    <PackageOutputPath>./nupkg</PackageOutputPath>
    

    <ToolCommandName> is een optioneel element dat de opdracht aangeeft waarmee het hulpprogramma wordt aangeroepen nadat het is geïnstalleerd. Als dit element niet is opgegeven, is de naam van de opdracht voor het hulpprogramma de assemblynaam. Dit is meestal de naam van het projectbestand zonder de extensie .csproj .

    <PackageOutputPath> is een optioneel element dat bepaalt waar het NuGet-pakket wordt geproduceerd. Het NuGet-pakket is wat de .NET CLI gebruikt om uw hulpprogramma te installeren.

    Het projectbestand ziet er nu uit zoals in het volgende voorbeeld:

    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
    
        <OutputType>Exe</OutputType>
        <TargetFramework>net6.0</TargetFramework>
    
        <PackAsTool>true</PackAsTool>
        <ToolCommandName>botsay</ToolCommandName>
        <PackageOutputPath>./nupkg</PackageOutputPath>
    
      </PropertyGroup>
    
    </Project>
    
  2. Maak een NuGet-pakket door de opdracht dotnet pack uit te voeren:

    dotnet pack
    

    Het bestand microsoft.botsay.1.0.0.nupkg wordt gemaakt in de map die wordt aangegeven door de <PackageOutputPath> waarde van het bestand microsoft.botsay.csproj . Dit is in dit voorbeeld de map ./nupkg .

    Wanneer u een hulpprogramma openbaar wilt vrijgeven, kunt u het uploaden naar https://www.nuget.org. Zodra het hulpprogramma beschikbaar is op NuGet, kunnen ontwikkelaars het hulpprogramma installeren met behulp van de opdracht dotnet tool install . Voor deze zelfstudie installeert u het pakket rechtstreeks vanuit de lokale nupkg-map , zodat u het pakket niet hoeft te uploaden naar NuGet.

Problemen oplossen

Als u een foutbericht krijgt tijdens het volgen van de zelfstudie, raadpleegt u Problemen met het gebruik van .NET-hulpprogramma's oplossen.

Volgende stappen

In deze zelfstudie hebt u een consoletoepassing gemaakt en deze verpakt als een hulpprogramma. Als u wilt weten hoe u het hulpprogramma als een algemeen hulpprogramma kunt gebruiken, gaat u verder met de volgende zelfstudie.

Als u wilt, kunt u de zelfstudie algemene hulpprogramma's overslaan en rechtstreeks naar de zelfstudie voor lokale hulpprogramma's gaan.