Vytvoření balíčku NuGet

Dokončeno

Když vytvoříte balíček knihovny tříd Razor, máte binární výstup, na který mohou ostatní projekty Blazor odkazovat a komponenty z této knihovny mohou být použity 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 FirstClassLibrary

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

  1. Otevřete soubor projektu pro projekt FirstClassLibrary . Buď poklikejte na projekt v Průzkumníku řešení sady Visual Studio, nebo otevřete soubor FirstClassLibrary.csproj v editoru Visual Studio Code.

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

        <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 knihovnu tříd Razor tak, že má <PackageId> My.FirstClassLibrary 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 FirstClassLibrary.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/Release .

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

V aplikaci MyBlazorApp jste již odkazovali na projekt FirstClassLibrary , protože byl ve stejné struktuře složek jako webová aplikace.

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

Následující kroky nepopisuje typickou konfiguraci. 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 MyBlazorApp.csproj poklikáním na název projektu MyBlazorApp v sadě Visual Studio nebo otevřením souboru v editoru Visual Studio Code.

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

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

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

    dotnet add package My.FirstClassLibrary -s ../FirstClassLibrary/bin/Release
    

    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 MyBlazorApp.csproj .

Zkontrolujte svou práci

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 MyBlazorApp buď v sadě Visual Studio, výběrem klávesy F5 nebo ve složce MyBlazorApp 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 MyBlazorApp: 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.