Pakietowanie biblioteki klas Razor
Zadanie, które często wykonujesz, to pakowanie bibliotek do ponownego użycia przez innych deweloperów. Pakiety NuGet sprawiają, że każdy deweloper, niezależnie od miejsca, może łatwo uzyskać i prawidłowo skonfigurować wszystkie odwołania .NET dla swoich aplikacji.
W poprzedniej jednostce zbudowałeś/zbudowałaś komponent okna modalnego i użyłeś/użyłaś go we własnej aplikacji. Teraz chcesz użyć jej ponownie w innych aplikacjach.
W tej lekcji poznasz kroki niezbędne do skonfigurowania biblioteki klas Razor jako pakietu NuGet. Dowiesz się również, jak spakować bibliotekę do dystrybucji przy użyciu usługi repozytorium pakietów, takiej jak NuGet.org lub repozytoria GitHub.
Konfigurowanie biblioteki klas Razor na potrzeby tworzenia pakietów NuGet
Ekosystem platformy .NET ułatwia definiowanie właściwości niezbędnych dla innych deweloperów do identyfikowania i używania składników. Wszystkie te właściwości można zdefiniować w pliku projektu (*.csproj) biblioteki klas Razor, tak aby były one przesyłane z biblioteką i są odpowiednio aktualizowane po zaktualizowaniu biblioteki.
Pola, które identyfikują pakiet, można skonfigurować w oknie dialogowym właściwości projektu Visual Studio - Pakiet lub utworzyć wpisy bezpośrednio w pliku *.csproj samodzielnie.
Cztery pola wymagane do utworzenia pakietu to:
Pole | Opis | Wartość domyślna |
---|---|---|
Identyfikator pakietu | Identyfikator pakietu unikatowy w całym repozytorium NuGet. |
AssemblyName biblioteki |
Wersja | Określony numer wersji w formacie Major.Minor.Patch[-Sufiks], gdzie -Sufiks opcjonalnie definiuje wersje wstępne. | 1.0.0 |
Autorzy | Autorzy pakietu. | AssemblyName |
Firma | Nazwa firmy odpowiedzialnej za tworzenie i publikowanie pakietu. | AssemblyName |
Niektóre z tych pól mają wartości domyślne i może wydawać się zabawne, aby opublikować pakiet z nazwą firmy MyFirstLibrary. Zdecydowanie zalecamy jawne zdefiniowanie tych wartości.
W poprzedniej lekcji przedstawiono, że zawartość statyczna biblioteki klas Razor jest dostępna w _content/[PACKAGE_ID]/
, a teraz zobaczysz, gdzie skonfigurowano wartość PackageId
.
Przykładowy plik projektu ze skonfigurowanymi wartościami może wyglądać następująco:
<PropertyGroup>
<PackageId>Learn.MyFirstLibrary</PackageId>
<Version>0.1.0-alpha1</Version>
<Authors>Susan Developer, Terry Programmer</Authors>
<Company>AdventureWorks</Company>
</PropertyGroup>
Podczas kompilowania projektu możesz również skonfigurować go tak, aby wygenerował pakiet NuGet, wybierając opcję Generuj pakiet NuGet na kompilacji w oknie dialogowym Właściwości projektu programu Visual Studio projektu lub dodając wpis GeneratePackageOnBuild
obok innych pól pakietu, jak pokazano poniżej:
<GeneratePackageOnBuild>True</GeneratePackageOnBuild>
Można skonfigurować wiele opcjonalnych właściwości projektu, w tym:
-
Description
, które jest odpowiednie do wyświetlania w repozytorium NuGet - Powiadomienie o prawach autorskich
- Informacje o licencjonowaniu
- Ikony
- Adresy URL projektów
Aby uzyskać pełną listę właściwości, zapoznaj się z dokumentacją firmy Microsoft dotyczącą docelowego pakietu msBuild .
Spakuj bibliotekę
Po zapisaniu konfiguracji biblioteki w pliku *.csproj możesz wygenerować pakiet NuGet w programie Visual Studio, klikając prawym przyciskiem myszy projekt i wybierając polecenie Pack Pack lub w folderze projektu, uruchamiając następujące polecenie:
dotnet pack
To polecenie dotnet pack
generuje pakiet z identyfikatorem PackageID i numerem wersji i umieszcza go w standardowym folderze wyjściowym kompilacji projektu.