¿Qué es NuGet?
Un sistema que permite a los desarrolladores escribir, intercambiar y usar código funcional es un componente crucial de cualquier plataforma de desarrollo moderna. Este código funcional se agrupa en "paquetes" que también incluyen otros materiales requeridos por los proyectos que los utilizan, como código compilado (en forma de DLLs).
El método de Microsoft para compartir código para .NET (incluyendo .NET Core) es NuGet. NuGet permite la producción, hospedaje y recuperación de paquetes para .NET Frameworks. Los paquetes de software que gestiona NuGet se llaman paquetes NuGet.
¿Qué es NuGet? Un paquete NuGet es solo un archivo zip con la extensión .nupkg. Contiene todos los DLLs necesarios para hacer funcionar el software. También contiene un manifiesto descriptivo que lista el número de versión del paquete, entre otras cosas. Los desarrolladores solo necesitan instalar el paquete NuGet, y pueden usar los métodos proporcionados por ese paquete.
Qué es Nuget y cómo utilizarlo para desarrolladores .NET
- Utilizar la .NET CLI para automatizar el flujo de trabajo de las canalizaciones
- Utilice NuGet.exe CLI para acceder a comandos específicos para creadores de paquetes
- Gestione su proyecto con la función MSBuild
- Utilice la UI de NuGet Package Manager para obtener una interfaz fácil de usar en Visual Studio
- Instale los paquetes NuGet pertinentes en función de los requisitos de su proyecto
Características de NuGet
- NuGet adds private hosting support to the central nuget.org repository.
- NuGet proporciona las herramientas que los desarrolladores necesitan para crear, publicar e instalar paquetes.
- NuGet lleva un seguimiento de los paquetes utilizados en un proyecto y permite restaurar y actualizar esos paquetes desde esa lista.
- NuGet lleva un registro de todas las especificaciones referentes a cómo se estructuran los paquetes, como la localización y cómo se hacen las referencias.
- NuGet proporciona numerosas APIs para interactuar programáticamente con todos sus servicios, así como soporte para desarrolladores que publican extensiones de Visual Studio.
- NuGet incluye una caché de paquetes y una carpeta global para los paquetes para facilitar la instalación y reinstalación. Si un paquete ya está presente en la máquina local, la caché no lo descargará desde el repositorio central, y en su lugar servirá el paquete desde la caché.
Cómo funciona el paquete NuGet
NuGet, as a public host, maintains a central repository of over 100,000 unique packages. Cada día, millones de desarrolladores de .NET/.NET Core utilizan estos paquetes. NuGet también te permite hospedar paquetes de forma privada en la nube (por ejemplo, en Azure DevOps), en una red privada o incluso en tu sistema de archivos local. Como resultado, esos paquetes solo están disponibles para desarrolladores que tengan acceso al host, permitiéndote hacer paquetes disponibles para un grupo específico de consumidores.
Un host, cualquiera sea su naturaleza, sirve como enlace entre los creadores de paquetes y los consumidores de paquetes. Los creadores desarrollan paquetes NuGet útiles y los distribuyen a un host. Los consumidores luego buscan en los hosts accesibles paquetes útiles y compatibles, descargando e incluyendo esos paquetes en sus proyectos. Una vez instalados en un proyecto, las APIs de los paquetes son accesibles para el resto del código del proyecto.

Herramientas NuGet
Existen seis herramientas que se utilizan para gestionar paquetes NuGet.
.NET CLI
Es una interfaz de línea de comandos (CLI) para bibliotecas .NET Core y .NET Standard, así como para proyectos de estilo SDK dirigidos al .NET Framework (ver atributo SDK). Ciertas capacidades de NuGet CLI están disponibles directamente dentro de la cadena de herramientas de .NET Core. El .NET CLI, como el nuget.exe CLI, no interactúa con proyectos de Visual Studio.
NuGet.exe CLI
Es una CLI para bibliotecas del .NET Framework y proyectos de estilo no-SDK orientados a bibliotecas .NET Standard. Proporciona todas las capacidades del .NET CLI, con algunos comandos solo aplicables para creadores de paquetes y otros comandos solo para consumidores. Los creadores de paquetes, por ejemplo, usan el comando NuGet pack para generar un paquete a partir de varios ensamblajes y archivos relacionados. Los usuarios de paquetes usan NuGet install para incluir paquetes en una carpeta de proyecto. Tanto los desarrolladores de paquetes como los usuarios de paquetes usan NuGet config para establecer variables de configuración de NuGet.
El NuGet CLI no interactúa con proyectos de Visual Studio porque es una herramienta independiente de la plataforma.
Consola del administrador de paquetes
La Consola del Gestor de Paquetes proporciona comandos de PowerShell para instalar y gestionar paquetes dentro de proyectos de Visual Studio.
UI del gestor de paquetes
La IU del Gestor de Paquetes proporciona una interfaz amigable para instalar y gestionar paquetes para proyectos dentro de Visual Studio.
Administrar la interfaz de usuario del gestor de paquetes NuGet
Esta herramienta también proporciona una interfaz amigable para instalar y gestionar paquetes en proyectos en Visual Studio. Esta herramienta está disponible solo para usuarios de Mac.
MSBuild
MSBuild permite a los usuarios crear y restaurar paquetes utilizados en un proyecto directamente desde la cadena de herramientas MSBuild.
La IU del Gestor de Paquetes y la Consola del Gestor de Paquetes son las herramientas más utilizadas para gestionar paquetes NuGet. Ahora exploraremos cómo se utilizan.
Uso de la interfaz de usuario del gestor de paquetes NuGet
En Visual Studio, haz clic en Herramientas desde la Barra de Menú Superior y selecciona Gestor de Paquetes NuGet > Administrar paquete NuGet para Soluciones.
Aparecerá una nueva ventana como se muestra a continuación.

En la pestaña Instalado, aparecerán aquí todos los paquetes NuGet que ya están instalados.
Haz clic en el Botón de Navegación y escribe el nombre de un paquete en la Barra de Búsqueda. Buscaremos IronBarcode como ejemplo.

Haz clic en el Botón de Instalación, la biblioteca será instalada y estará lista para su uso.
Detalles del Paquete NuGet IronBarcode es una biblioteca desarrollada y mantenida por Iron Software que ayuda a los ingenieros de software C# a leer y escribir códigos de barras y códigos QR en aplicaciones .NET.
Las características clave son:
- Leer códigos de barras y códigos QR individuales o múltiples de imágenes o PDFs.
- Corrección de imágenes para sesgo, orientación, ruido, baja resolución, contraste, etc.
- Crear códigos de barras y aplicarlos a imágenes o documentos PDF.
- Incrustar códigos de barras en documentos HTML.
- Estilizar códigos de barras y añadir texto de anotación.
- La Escritura de Código QR permite añadir logotipos, colores y una alineación avanzada del QR.
Aprende más sobre IronBarcode desde la página de documentación del producto.
Uso de la consola del gestor de paquetes
En Visual Studio, haz clic en Herramientas desde la Barra de Menú Superior y selecciona Gestor de Paquetes NuGet => Consola del Gestor de Paquetes.
La ventana de la Consola del Gestor de Paquetes aparecerá como se muestra a continuación.

Instalemos un paquete usando la Consola del Gestor de Paquetes.
El comando Install-Package 'package-Name' se utiliza para instalar el paquete. Por ejemplo, para instalar el paquete IronOCR:
Install-Package IronPdf
Explora el Paquete NuGet IronOCR es una biblioteca de software C# que permite a los desarrolladores de software .NET detectar y leer texto de imágenes y documentos PDF. Usa el motor Tesseract más avanzado conocido en cualquier lugar. IronOCR destaca sobre todas las otras bibliotecas OCR al trabajar con imágenes del mundo real llenas de imperfecciones (es decir, ruido digital, resoluciones de baja calidad, etc.). Admite múltiples lenguajes de programación.
Lee más sobre la documentación técnica sobre IronOCR desde el sitio web del producto.
Algunos paquetes NuGet útiles
Esta sección describirá algunos útiles Paquetes NuGet disponibles para trabajar con bases de datos y archivos.
Entity Framework
Descubre el Paquete NuGet Entity Framework es el Paquete NuGet más común y poderoso disponible para trabajar con bases de datos en aplicaciones .NET.
Es un marco ORM de código abierto soportado por Microsoft que permite a los desarrolladores trabajar con datos usando objetos específicos de dominio en lugar de usar las tablas y columnas subyacentes de la base de datos donde se almacenan los datos. Al trabajar con datos, los desarrolladores pueden trabajar en un nivel de abstracción más alto. Esto les permite crear y mantener aplicaciones orientadas a datos con menos código que las aplicaciones tradicionales.
Hay paquetes NuGet separados disponibles para gestionar servidores de base de datos SQL server, Oracle, MySQL y PostgreSQL.
La Guía de Inicio para Entity Framework proporciona más información sobre las capacidades de Entity Framework.
HierroPDF
Paquete NuGet IronPDF resuelve el difícil problema de añadir capacidades de procesamiento de PDF a las aplicaciones. IronPDF automatiza la conversión de documentos formateados a PDF y también permite a los desarrolladores crear, editar y exportar documentos PDF.
Las características principales de IronPDF incluyen:
- Convertir formularios web, páginas HTML locales y otras páginas web a PDF con .NET.
- Permitir a los usuarios descargar documentos, enviarlos por correo electrónico o almacenarlos en la nube.
- Producir facturas, presupuestos, informes, contratos y otros documentos.
- Trabajar con ASP .NET, ASP .NET Core, formularios web, MVC, API Web en .NET Framework y .NET Core.
Lee más sobre IronPDF en su página de documentación del producto.
IronXL
Paquete NuGet IronXL ayuda a los ingenieros de software C# a leer, crear y editar archivos de hojas de cálculo en aplicaciones .NET. IronXL funciona bien sin el uso de Office Excel Interop, y no requiere dependencias adicionales ni la necesidad de instalar Microsoft Office.
Puedes aprender más sobre IronXL desde la documentación completa del producto.
Iron Software proporciona las cinco bibliotecas (IronPDF, IronXL, IronBarcode, IronWebScraper, e IronOCR) en un solo Suite .NET. Puedes obtener las cinco bibliotecas al precio de dos al comprar el suite completo. Todas las compras incluyen soporte de producto de por vida.
Resumen
NuGet es el gestor de paquetes para aplicaciones .NET. Las herramientas cliente de NuGet proporcionan la capacidad de crear, compartir y recuperar paquetes. La Galería de NuGet es el repositorio central de paquetes utilizado por todos los autores y consumidores de paquetes.
- NuGet provides the central nuget.org repository with support for private hosting.
- NuGet proporciona las herramientas que los desarrolladores necesitan para crear, publicar e instalar paquetes.
- NuGet mantiene una referencia de paquetes utilizados en un proyecto y la capacidad de restaurar y actualizar esos paquetes desde esa lista.
Preguntas Frecuentes
¿Cómo puedo convertir HTML a PDF en C#?
Puede utilizar el método RenderHtmlAsPdf de IronPDF para convertir cadenas HTML en PDFs. También puede convertir archivos HTML en PDFs utilizando el método RenderHtmlFileAsPdf.
¿Qué es NuGet y por qué es importante para los desarrolladores .NET?
NuGet es un sistema de gestión de paquetes que permite a los desarrolladores .NET crear, compartir y utilizar código empaquetado de manera eficiente. Simplifica la gestión de bibliotecas y dependencias de terceros, asegurando el uso de las versiones correctas y facilitando la actualización y restauración de paquetes.
¿Cómo instalo un paquete NuGet usando la CLI de .NET?
Para instalar un paquete NuGet usando la CLI de .NET, puede usar el comando dotnet add package [PackageName]. Este comando añade el paquete especificado a su proyecto, agilizando el proceso de gestión de paquetes.
¿Qué herramientas son esenciales para gestionar paquetes NuGet en Visual Studio?
Las herramientas esenciales para gestionar paquetes NuGet en Visual Studio incluyen la interfaz del Gestor de Paquetes, la Consola del Gestor de Paquetes y la CLI de .NET. Estas herramientas permiten la navegación eficiente, instalación y actualización de paquetes dentro de sus proyectos.
¿Cuáles son los beneficios de utilizar alojamiento privado para paquetes NuGet?
El alojamiento privado para paquetes NuGet permite a los desarrolladores compartir paquetes dentro de grupos específicos u organizaciones de manera segura. Esto asegura que solo los usuarios autorizados tengan acceso a ciertos paquetes, mejorando la seguridad y el control sobre la distribución de código.
¿Cómo facilita la Consola del Gestor de Paquetes NuGet la gestión de paquetes?
La Consola del Gestor de Paquetes NuGet en Visual Studio permite a los desarrolladores ejecutar comandos para instalar, actualizar y gestionar paquetes directamente dentro de su entorno de desarrollo. Esto proporciona una interfaz poderosa para manejar dependencias y versiones de paquetes de manera eficiente.
¿Qué papel juega un manifiesto en un paquete NuGet?
Un manifiesto en un paquete NuGet contiene metadatos, como el número de versión del paquete y otra información importante. Estos metadatos son cruciales para identificar, gestionar y resolver dependencias dentro de un proyecto.
¿Puede NuGet ser usado para proyectos que no sean .NET?
Aunque NuGet está diseñado principalmente para proyectos .NET, su infraestructura puede soportar la gestión de paquetes para una variedad de otros proyectos. Sin embargo, su potencial completo y sus características se aprovechan mejor dentro del ecosistema .NET.
¿Cómo simplifican los mecanismos de caché de NuGet la gestión de paquetes?
Los mecanismos de caché de NuGet permiten una fácil instalación y reinstalación de paquetes almacenando los datos de los paquetes localmente. Esto reduce la necesidad de descargar repetidamente paquetes del repositorio central, acelerando el proceso de desarrollo.
¿Cuáles son algunos ejemplos de paquetes NuGet populares?
Paquetes NuGet populares incluyen Entity Framework para interacciones con bases de datos, IronPDF para procesamiento de PDF e IronXL para manipulación de hojas de cálculo. Estos paquetes proporcionan a los desarrolladores herramientas poderosas para mejorar sus aplicaciones .NET.








