
Czym jest NuGet?
System, który pozwala programistom pisać, wymieniać i używać funkcjonalnego kodu, jest kluczowym elementem każdej nowoczesnej platformy programistycznej. Ten kod funkcjonalny jest zawarty w "pakietach", które zawierają również inne materiały wymagane przez projekty, w których są one wykorzystywane, takie jak skompilowany kod (w postaci bibliotek DLL).
Metodą udostępniania kodu dla platformy .NET (w tym .NET Core) wspieraną przez firmę Microsoft jest NuGet. NuGet umożliwia tworzenie, hostowanie i pobieranie pakietów dla .NET Framework. Pakiety oprogramowania zarządzane przez NuGet nazywane są pakietami NuGet.
Czym jest NuGet? Pakiet NuGet to po prostu plik ZIP z rozszerzeniem .nupkg. Zawiera wszystkie biblioteki DLL niezbędne do działania oprogramowania. Zawiera również opisowy manifest, który zawiera między innymi numer wersji pakietu. Programiści muszą jedynie zainstalować pakiet NuGet, aby móc korzystać z metod udostępnianych przez ten pakiet.
Czym jest NuGet i jak go używać dla deweloperów .NET
- Wykorzystaj interfejs CLI platformy .NET do automatyzacji przepływu pracy w potoku
- Użyj interfejsu CLI NuGet.exe, aby uzyskać dostęp do konkretnych poleceń dla twórców pakietów
- Zarządzaj swoim projektem za pomocą funkcji MSBuild
- Wykorzystaj interfejs użytkownika menedżera pakietów NuGet, aby uzyskać przyjazny interfejs w Visual Studio
- Zainstaluj odpowiednie pakiety NuGet zgodnie z wymaganiami projektu
Funkcje NuGet
- NuGet dodaje obsługę hostingu prywatnego do centralnego repozytorium nuget.org.
- NuGet zapewnia narzędzia potrzebne programistom do tworzenia, publikowania i instalowania pakietów.
- NuGet śledzi pakiety używane w projekcie i pozwala przywrócić oraz zaktualizować te pakiety z tej listy.
- NuGet śledzi wszystkie specyfikacje dotyczące struktury pakietów, takie jak lokalizacja i sposób odwoływania się do nich.
- NuGet udostępnia liczne interfejsy API do programowej interakcji ze wszystkimi swoimi usługami, a także wsparcie dla programistów publikujących rozszerzenia Visual Studio.
- NuGet zawiera pamięć podręczną pakietów oraz globalny folder na pakiety, aby ułatwić instalację i ponowną instalację. Jeśli pakiet jest już obecny na lokalnym komputerze, pamięć podręczna nie pobierze go z centralnego repozytorium, a zamiast tego udostępni pakiet z pamięci podręcznej.
Jak działa pakiet NuGet
NuGet, jako publiczny host, prowadzi centralne repozytorium zawierające ponad 100 000 unikalnych pakietów. Każdego dnia miliony programistów .NET/.NET Core korzystają z tych pakietów. NuGet umożliwia również prywatne hostowanie pakietów w chmurze (na przykład w Azure DevOps), w sieci prywatnej, a nawet w lokalnym systemie plików. W rezultacie pakiety te są dostępne wyłącznie dla programistów posiadających dostęp do hosta, co pozwala udostępniać pakiety określonej grupie odbiorców.
Host, niezależnie od jego charakteru, służy jako łącznik między twórcami pakietów a ich użytkownikami. Twórcy opracowują przydatne pakiety NuGet i udostępniają je na serwerze. Użytkownicy przeszukują następnie dostępne serwery w poszukiwaniu przydatnych i kompatybilnych pakietów, pobierają je i włączają do swoich projektów. Po zainstalowaniu w projekcie interfejsy API pakietów są dostępne dla pozostałej części kodu projektu.

Narzędzia NuGet
Istnieje sześć narzędzi służących do zarządzania pakietami NuGet.
.NET CLI
Jest to interfejs wiersza poleceń (CLI) dla bibliotek .NET Core i .NET Standard, a także dla projektów typu SDK przeznaczonych dla platformy .NET Framework (zobacz atrybut SDK). Niektóre funkcje NuGet CLI są dostępne bezpośrednio w łańcuchu narzędzi .NET Core. Interfejs CLI platformy .NET, podobnie jak interfejs CLI programu NuGet.exe, nie współdziała z projektami Visual Studio.
NuGet.exe CLI
Jest to interfejs CLI dla bibliotek .NET Framework oraz projektów nieopartych na SDK, ukierunkowanych na biblioteki .NET Standard. Zapewnia wszystkie możliwości interfejsu CLI platformy .NET, przy czym niektóre polecenia mają zastosowanie wyłącznie dla twórców pakietów, a inne wyłącznie dla użytkowników. Twórcy pakietów używają np. polecenia NuGet pack, aby wygenerować pakiet z różnych zestawów i powiązanych plików. Użytkownicy pakietów używają NuGet install, aby dołączyć pakiety do folderu projektu. Zarówno twórcy jak i użytkownicy pakietów używają NuGet config, aby ustawić zmienne konfiguracyjne NuGet.
NuGet CLI nie współdziała z projektami Visual Studio, ponieważ jest to narzędzie niezależne od platformy.
Konsola menedżera pakietów
Konsola menedżera pakietów udostępnia polecenia PowerShell do instalowania pakietów i zarządzania nimi w ramach projektów Visual Studio.
Interfejs użytkownika menedżera pakietów
Interfejs użytkownika menedżera pakietów zapewnia przyjazny interfejs do instalowania pakietów i zarządzania nimi w ramach projektów w Visual Studio.
Zarządzanie interfejsem użytkownika menedżera pakietów NuGet
Narzędzie to zapewnia również przyjazny dla użytkownika interfejs do instalowania pakietów i zarządzania nimi w projektach w Visual Studio. To narzędzie jest dostępne wyłącznie dla użytkowników komputerów Mac.
MSBuild
MSBuild pozwala użytkownikom tworzyć i przywracać pakiety używane w projekcie bezpośrednio z łańcucha narzędzi MSBuild.
Narzędzie Package Manager UI i Package Manager Console są najbardziej powszechnie używane do zarządzania pakietami NuGet. Teraz przyjrzymy się, jak się ich używa.
Korzystanie z interfejsu użytkownika menedżera pakietów NuGet
W programie Visual Studio kliknij opcję Narzędzia na górnym pasku menu i wybierz Menedżer pakietów NuGet > Zarządzaj pakietami NuGet dla rozwiązań.
Pojawi się nowe okno, jak pokazano poniżej.

W zakładce "Zainstalowane" pojawią się wszystkie pakiety NuGet, które są już zainstalowane.
Kliknij przycisk Przeglądaj i wpisz nazwę pakietu w pasku wyszukiwania. Jako przykład wyszukamy IronBarcode.

Kliknij przycisk "Zainstaluj", a biblioteka zostanie zainstalowana i będzie gotowa do użycia.
IronBarcode NuGet Package Details to biblioteka opracowana i utrzymywana przez Iron Software, która pomaga inżynierom oprogramowania C# odczytywać i zapisywać kody kreskowe oraz kody QR w aplikacjach .NET.
Główne funkcje obejmują:
- Odczytuj pojedyncze lub wiele kodów BarCode i kodów QR z obrazów lub plików PDF.
- Korekcja obrazu pod kątem przekrzywienia, orientacji, szumów, niskiej rozdzielczości, kontrastu itp.
- Twórz barcody i umieszczaj je na obrazach lub w dokumentach PDF.
- Osadzanie kodów kreskowych w dokumentach HTML.
- Sformatuj BarCodes i dodaj tekst adnotacji.
- Funkcja tworzenia kodów QR umożliwia dodawanie logo, kolorów oraz zaawansowane dopasowanie kodu QR.
Więcej informacji na temat IronBarcode można znaleźć na stronie dokumentacji produktu.
Korzystanie z konsoli menedżera pakietów
W programie Visual Studio kliknij opcję Narzędzia na górnym pasku menu i wybierz Menedżer pakietów NuGet => Konsola menedżera pakietów.
Pojawi się okno konsoli menedżera pakietów, jak pokazano poniżej.

Zainstalujmy pakiet za pomocą konsoli menedżera pakietów.
Polecenie Install-Package 'package-Name' służy do instalacji pakietu. Na przykład, aby zainstalować pakiet IronOCR:
Pakiet NuGet Explore IronOCR to biblioteka oprogramowania w języku C#, która umożliwia programistom .NET wykrywanie i odczytywanie tekstu z obrazów i dokumentów PDF. Wykorzystuje najbardziej zaawansowany silnik Tesseract znany na rynku. IronOCR wyróżnia się na tle innych bibliotek OCR podczas pracy z rzeczywistymi obrazami pełnymi niedoskonałości (np. szumów cyfrowych, niskiej jakości rozdzielczości itp.). Obsługuje wiele języków programowania.
Więcej informacji technicznych na temat IronOCR można znaleźć na stronie internetowej produktu.
Niektóre przydatne pakiety NuGet
W tej sekcji opisano kilka przydatnych pakietów NuGet dostępnych do pracy z bazami danych i plikami.
Entity Framework
Pakiet NuGet Discover Entity Framework jest najpopularniejszym i najpotężniejszym pakietem NuGet dostępnym do pracy z bazami danych w aplikacjach .NET Framework.
Jest to wspierana przez Microsoft otwarta platforma ORM, która pozwala programistom pracować z danymi przy użyciu obiektów specyficznych dla danej dziedziny, zamiast korzystać z podstawowych tabel i kolumn bazy danych, w których dane są przechowywane. Pracując z danymi, programiści mogą działać na wyższym poziomie abstrakcji. Pozwala im to tworzyć i utrzymywać aplikacje zorientowane na dane przy użyciu mniejszej ilości kodu niż w przypadku tradycyjnych aplikacji.
Dostępne są oddzielne pakiety NuGet do zarządzania serwerami baz danych SQL Server, Oracle, MySQL i PostgreSQL.
Przewodnik "Pierwsze kroki z Entity Framework" zawiera więcej informacji na temat możliwości Entity Framework.
IronPDF
Pakiet IronPDF NuGet rozwiązuje trudny problem dodawania funkcji przetwarzania plików PDF do aplikacji. IronPDF automatyzuje konwersję sformatowanych dokumentów do formatu PDF, a także pozwala programistom tworzyć, edytować i eksportować dokumenty PDF.
Główne funkcje IronPDF obejmują:
- Konwertuj formularze internetowe, lokalne strony HTML i inne strony internetowe do formatu PDF za pomocą .NET.
- Umożliwia użytkownikom pobieranie dokumentów, wysyłanie ich pocztą elektroniczną lub przechowywanie w chmurze.
- Twórz faktury, oferty, raporty, umowy i inne dokumenty.
- Praca z ASP .NET, ASP .NET Core, formularzami internetowymi, MVC, interfejsami API sieci Web w środowisku .NET Framework oraz .NET Core.
Więcej informacji na temat IronPDF można znaleźć na stronie dokumentacji produktu.
IronXL
Pakiet IronXL NuGet pomaga inżynierom oprogramowania C# w odczytywaniu, tworzeniu i edytowaniu plików arkuszy kalkulacyjnych w aplikacjach .NET. IronXL działa dobrze bez korzystania z Office Excel Interop i nie wymaga dodatkowych zależności ani instalacji pakietu Microsoft Office.
Więcej informacji na temat IronXL można znaleźć w obszernej dokumentacji produktu.
Firma Iron Software udostępnia wszystkie pięć bibliotek (IronPDF, IronXL, IronBarcode, IronWebScraper i IronOCR) w jednym pakiecie .NET Suite. Kupując kompletną Suite, można otrzymać wszystkie pięć bibliotek w cenie dwóch. Wszystkie zakupy obejmują dożywotnią pomoc techniczną.
Podsumowanie
NuGet to menedżer pakietów dla aplikacji .NET. Narzędzia klienckie NuGet umożliwiają tworzenie, udostępnianie i pobieranie pakietów. NuGet Gallery to centralne repozytorium pakietów używane przez wszystkich autorów i użytkowników pakietów.
- NuGet udostępnia centralne repozytorium nuget.org z obsługą hostingu prywatnego.
- NuGet zapewnia narzędzia potrzebne programistom do tworzenia, publikowania i instalowania pakietów.
- NuGet przechowuje wykaz pakietów używanych w projekcie oraz umożliwia przywracanie i aktualizowanie tych pakietów z tej listy.

Jacob Mellor jest Chief Technology Officer w Iron Software i wizjonerskim inżynierem, pionierem technologii C# PDF. Jako pierwotny deweloper głównej bazy kodowej Iron Software, kształtuje architekturę produktów firmy od jej początku, przekształcając ją wspólnie z CEO Cameron Rimington w firmę liczącą ponad 50 osób, obsługującą NASA, Teslę i światowe agencje rządowe.
Powiązane artykuły


