Un système qui permet aux développeurs d'écrire, d'échanger et d'utiliser du code fonctionnel est un élément essentiel de toute plateforme de développement moderne. Ce code fonctionnel est regroupé dans des "packages" qui incluent également d'autres éléments nécessaires aux projets qui les utilisent, tels que le code compilé (sous forme de DLLs).
La méthode prise en charge par Microsoft pour le partage de code pour .NET (y compris .NET Core) est NuGet. NuGet permet de produire, d'héberger et de récupérer des paquets pour les Framework .NET. Les paquets de logiciels gérés par NuGet sont appelés paquets NuGet.
Qu'est-ce que NuGet ? Un package NuGet est simplement un fichier zip portant l'extension .nupkg. Il contient toutes les DLL nécessaires au fonctionnement du logiciel. Elle contient également un manifeste descriptif qui indique, entre autres, le numéro de version du paquet. Les développeurs n'ont qu'à installer le paquet NuGet, et ils peuvent utiliser les méthodes fournies par ce paquet.
Fonctionnalités de NuGet
- NuGet ajoute la prise en charge de l'hébergement privé au dépôt central [nuget.org](https://nuget.org/" target="_blank" rel="nofollow noreferrer noopener).
- NuGet fournit les outils dont les développeurs ont besoin pour créer, publier et installer des paquets.
- NuGet conserve la trace des paquets utilisés dans un projet et vous permet de restaurer et de mettre à jour ces paquets à partir de cette liste.
- NuGet assure le suivi de toutes les spécifications relatives à la structure des paquets, telles que la localisation et la manière dont ils sont référencés.
- NuGet fournit de nombreuses API pour interagir de manière programmatique avec tous ses services, ainsi qu'un support pour les développeurs qui publient des extensions Visual Studio.
- NuGet comprend un cache de paquets et un dossier global pour les paquets afin de faciliter l'installation et la réinstallation. Si un paquet est déjà présent sur la machine locale, le cache ne le téléchargera pas depuis le dépôt central et le servira à la place depuis le cache.
Fonctionnement du package NuGet
NuGet, en tant qu'hôte public, maintient un dépôt central de plus de [100 000 packages uniques](http://nuget.org/" target="_blank" rel="nofollow noopener noreferrer). Chaque jour, des millions de développeurs .NET/.NET Core utilisent ces packages. NuGet vous permet également d'héberger des packages de manière privée dans le cloud (par exemple, sur Azure DevOps), sur un réseau privé ou même sur votre système de fichiers local. Par conséquent, ces paquets ne sont disponibles que pour les développeurs qui ont accès à l'hôte, ce qui vous permet de mettre des paquets à la disposition d'un groupe spécifique de consommateurs.
Un hébergeur, quelle que soit sa nature, sert de lien entre les créateurs de paquets et les consommateurs de paquets. Les créateurs développent des paquets NuGet utiles et les distribuent à un hôte. Les consommateurs recherchent ensuite les paquets utiles et compatibles dans les hôtes accessibles, les téléchargent et les intègrent dans leurs projets. Une fois installés dans un projet, les API des paquets sont accessibles au reste du code du projet.
Outils NuGet
Six outils sont utilisés pour gérer les paquets NuGet.
.NET CLI
Il s'agit d'une interface en ligne de commande (CLI) pour les bibliothèques .NET Core et .NET Standard, ainsi que pour les projets de type SDK ciblant le .NET Framework (voir l'attribut SDK). Certaines fonctionnalités de la CLI de NuGet sont disponibles directement dans la chaîne d'outils de .NET Core. L'ILC .NET, comme l'ILC nuget.exe, n'interagit pas avec les projets Visual Studio.
CLI NuGet.exe
Il s'agit d'une interface de gestion pour les bibliothèques du Framework .NET et les projets non-SDK visant les bibliothèques du Standard .NET. Il offre toutes les fonctionnalités de l'interface de programmation .NET, certaines commandes ne s'appliquant qu'aux créateurs de paquets et d'autres qu'aux consommateurs. Les créateurs de packages, par exemple, utilisent la commande NuGet pack
pour générer un package à partir de divers assemblages et fichiers associés. Les utilisateurs de package utilisent NuGet install
pour inclure des packages dans un dossier de projet. Tant les développeurs de packages que les utilisateurs de packages utilisent NuGet config
pour définir les variables de configuration NuGet.
Le CLI de NuGet n'interagit pas avec les projets Visual Studio, car il s'agit d'un outil indépendant de la plate-forme.
Console du gestionnaire de paquets
La console Package Manager fournit des commandes PowerShell pour l'installation et la gestion des paquets dans les projets Visual Studio.
Interface utilisateur du gestionnaire de paquets
L'interface utilisateur du gestionnaire de paquets permet d'installer et de gérer les paquets pour les projets dans Visual Studio.
Gérer l'interface utilisateur du gestionnaire de paquets NuGet
Cet outil fournit également une interface conviviale pour l'installation et la gestion des paquets dans les projets de Visual Studio. Cet outil n'est disponible que pour les utilisateurs de Mac.
MSBuild
MSBuild permet aux utilisateurs de créer et de restaurer les paquets utilisés dans un projet directement à partir de la chaîne d'outils MSBuild.
Package Manager UI et Package Manager Console sont les outils les plus utilisés pour gérer les paquets NuGet. Nous allons maintenant voir comment ils sont utilisés.
Utilisation de l'interface utilisateur du gestionnaire de paquets NuGet
Dans Visual Studio, cliquez sur Outils dans la barre de menu supérieure et sélectionnez NuGet Package Manager > Gérer les packages NuGet pour les solutions.
Une nouvelle fenêtre apparaît comme indiqué ci-dessous.
Dans l'onglet Installé, tous les paquets NuGet déjà installés apparaissent ici.
Cliquez sur le bouton Parcourir et écrivez le nom d'un paquet dans la barre de recherche. Nous rechercherons IronBarcode à titre d'exemple.
Cliquez sur le bouton Installer, la bibliothèque sera installée et prête à l'emploi.
IronBarcode NuGet Package Details est une bibliothèque développée et maintenue par Iron Software qui aide les ingénieurs logiciels C# à lire et écrire des codes-barres et des codes QR dans des applications .NET.
Les principales caractéristiques sont les suivantes
- Lire des codes-barres simples ou multiples et des codes QR à partir d'images ou de PDF.
- Correction de l'image pour l'inclinaison, l'orientation, le bruit, la faible résolution, le contraste, etc.
- Créez des BarCodes et appliquez-les à des images ou à des documents PDF.
- Intégrer des codes-barres dans des documents HTML.
- Stylez les codes-barres et ajoutez du texte d'annotation.
-
L'écriture de codes QR permet d'ajouter des logos, des couleurs et un alignement QR avancé.
En savoir plus sur IronBarcode à partir de la page de documentation du produit.
Utilisation de la console du gestionnaire de paquets
Dans Visual Studio, cliquez sur Outils dans la barre de menu supérieure et sélectionnez NuGet Package Manager => Package Manager console.
La fenêtre de la console du gestionnaire de paquets s'affiche comme indiqué ci-dessous.
Installons un paquetage à l'aide de la console du gestionnaire de paquets.
La commande Install-Package 'package-Name'
est utilisée pour installer le package. Par exemple :
Explorez le package NuGet IronOCR est une bibliothèque logicielle C# qui permet aux développeurs de logiciels .NET de détecter et de lire le texte à partir d'images et de documents PDF. Il utilise le moteur Tesseract le plus avancé que l'on connaisse. IronOCR surpasse toutes les autres bibliothèques OCR lorsqu'il s'agit de travailler avec des images du monde réel parsemées d'imperfections (c'est-à-dire, bruit numérique, résolutions de faible qualité, etc.). Elle prend en charge plusieurs langages de programmation.
En savoir plus sur la documentation technique concernant IronOCR sur le site web du produit.
Quelques paquets NuGet utiles
Cette section décrit quelques paquets NuGet utiles pour travailler avec des bases de données et des fichiers.
Entity Framework
Découvrez le package NuGet Entity Framework est le package NuGet le plus courant et le plus puissant disponible pour travailler avec des bases de données dans des applications .NET.
Il s'agit d'un cadre ORM open-source soutenu par Microsoft qui permet aux développeurs de travailler avec des données en utilisant des objets spécifiques au domaine plutôt que les tables et les colonnes de la base de données sous-jacente où les données sont stockées. Lorsqu'ils travaillent avec des données, les développeurs peuvent travailler à un niveau d'abstraction plus élevé. Ces outils leur permettent de créer et de maintenir des applications orientées données avec moins de code que les applications traditionnelles.
Des packages NuGet distincts sont disponibles pour gérer les serveurs de bases de données SQL Server, Oracle, MySQL et PostgreSQL.
Le Guide de démarrage pour Entity Framework fournit plus d'informations sur les capacités d'Entity Framework.
IronPDF
IronPDF NuGet Package résout le problème difficile d'ajouter des fonctionnalités de traitement PDF aux applications. IronPDF automatise la conversion de documents formatés en PDF et permet également aux développeurs de créer, éditer et exporter des documents PDF.
Les principales caractéristiques d'IronPDF sont les suivantes :
- Convertissez des formulaires web, des pages HTML locales et d'autres pages web en PDF avec .NET.
- Permettre aux utilisateurs de télécharger des documents, de les envoyer par courrier électronique ou de les stocker dans le nuage.
- Produire des factures, des devis, des rapports, des contrats et d'autres documents.
-
Travaillez avec ASP .NET, ASP .NET Core, les formulaires web, MVC, les API web sur .NET Framework et .NET Core.
En savoir plus sur IronPDF sur sa page de documentation produit.
IronXL
Le package NuGet IronXL aide les ingénieurs logiciels en C# à lire, créer et modifier des fichiers de tableur dans les applications .NET. IronXL fonctionne bien sans l'utilisation d'Office Excel Interop, et ne nécessite pas de dépendances supplémentaires ni l'installation de Microsoft Office.
Vous pouvez en apprendre plus sur IronXL à partir de la documentation produit complète.
Iron Software fournit les cinq bibliothèques (IronPDF, IronXL, IronBarcode, IronWebScraper, et IronOCR) dans une seule Suite .NET. Vous pouvez obtenir les cinq bibliothèques pour le prix de deux lorsque vous achetez la suite complète. Tous les achats comprennent une assistance produit à vie.
Résumé
NuGet est le gestionnaire de paquets pour les applications .NET. Les outils clients NuGet permettent de créer, de partager et de récupérer des paquets. La galerie NuGet est le dépôt central de paquets utilisé par tous les auteurs et consommateurs de paquets.
- NuGet fournit le dépôt central [nuget.org](http://nuget.org/" target="_blank" rel="nofollow noopener noreferrer) avec un support pour l'hébergement privé.
- NuGet fournit les outils dont les développeurs ont besoin pour créer, publier et installer des paquets.
- NuGet conserve une référence des paquets utilisés dans un projet et la possibilité de restaurer et de mettre à jour ces paquets à partir de cette liste.