Vytvoření balíčku NuGet

Dokončeno

Když zabalíte knihovnu tříd Razor, máte binární dodávku, na kterou lze odkazovat projekty Blazor, a komponenty v něm lze použít v těchto projektech.

V předchozí lekci jste vytvořili knihovnu tříd Razor s modální komponentou, která poskytuje modální dialogové okno pro aplikace Blazor. Pokud chcete tuto komponentu sdílet pro použití v jiných aplikacích, musíte ji zabalit a umístit do úložiště nebo složky, kde ji můžou získat jiní vývojáři.

V této lekci tento projekt aktualizujete a vygenerujete balíček NuGet. Nakonec tento balíček NuGet nasadíte do serverové aplikace Blazor.

Přidání vlastností balíčku do Třídy FirstClassLibrary

Začněte aktualizací projektu FirstClassLibrary vlastnostmi, které umožní zabalení pro nasazení jako balíček NuGet.

  1. Otevřete soubor projektu pro projekt MyClassLibrary poklikáním na projekt v sadě Visual Studio Průzkumník řešení nebo otevřením souboru MyClassLibrary.csproj v editoru Visual Studio Code.

  2. V horní části souboru přidejte do části se značkou <PropertyGroup> následující obsah před pravou </PropertyGroup> značku:

        <PackageId>My.FirstClassLibrary</PackageId>
        <Version>0.1.0</Version>
        <Authors>YOUR NAME</Authors>
        <Company>YOUR COMPANY NAME</Company>
        <Description>This is a Razor component library with a cool modal window component.</Description>
      </PropertyGroup>
    

    Tento kód definuje vaši knihovnu tříd Razor jako my.FirstClassLibrary <PackageId> a <Version> 0.1.0. Do těchto dvou polí zadejte vlastní název a název společnosti.

Zabalení knihovny pro opakované použití

Dále na příkazovém řádku spustíte příkaz .NET, který zabalí knihovnu tříd Razor tak, aby na ni mohly odkazovat jiné aplikace mimo vaše řešení.

Stejným postupem v procesu kontinuální integrace můžete knihovnu zabalit a nasadit ji do NuGet.org, úložiště GitHubu nebo jiného umístění, kde ji může vaše organizace sdílet.

Ve stejné složce jako soubor MyClassLibrary.csproj spusťte následující příkaz:

dotnet pack

Tento příkaz zapíše soubor s názvem My.FirstClassLibrary.0.1.0.nupkg do složky bin/Debug .

Přidání odkazu na balíček NuGet v aplikaci MyBlazorServer

Již jste odkazovali na projekt FirstClassLibrary v aplikaci MyBlazorServer, protože byl ve stejné struktuře složek jako webová aplikace.

Teď tento odkaz na projekt vrátíte zpět a přidáte odkaz na balíček NuGet, který jste vytvořili dříve.

Tyto kroky nejsou typickou konfigurací. Projekty knihovny, které se nacházejí ve stejných složkách nebo řešení jako aplikace, na které chcete odkazovat, můžou projekt odkazovat přímo, jak jste viděli v předchozím cvičení.

  1. Otevřete soubor MyBlazorServer.csproj poklikáním na název projektu MyBlazorServer v sadě Visual Studio nebo otevřením souboru v editoru Visual Studio Code.

  2. V souboru MyBlazorServer.csproj odeberte následující řádek:

    <ProjectReference Include="..\FirstClassLibrary\FirstClassLibrary.csproj" />

  3. Ve stejné složce jako MyBlazorServer.csproj spusťte následující příkaz:

    dotnet add package My.FirstClassLibrary -s ..\FirstClassLibrary\bin\Debug
    

    Tento příkaz vezme balíček NuGet, který jste vytvořili dříve, nainstaluje kopii do místní mezipaměti balíčků NuGet a pak přidá odkaz na tento balíček do souboru MyBlazorServer.csproj .

Kontrola práce

Nainstaloval se váš nový balíček správně? Můžete spustit aplikaci FirstServer a zobrazit modální okno při spuštění aplikace?

Pojďme se dozvědět:

  1. Spusťte aplikaci MyBlazorServer buď v sadě Visual Studio, výběrem klávesy F5 nebo ve složce MyBlazorServer spuštěním následujícího příkazu:

    dotnet run

  2. V prohlížeči přejděte na domovskou stránku aplikace MyBlazorServer: https://localhost:5000.

    Zobrazuje se dialogové okno Můj první modální dialog ? Pokud ano, blahopřejeme! Úspěšně jste zabalili a nasadili projekt FirstClassLibrary správně. Aplikace můžou nyní používat modální komponentu okna odkazováním na nově vytvořený balíček NuGet.