CoreComponentExporter 2025.7.13
See the version list below for details.
dotnet add package CoreComponentExporter --version 2025.7.13
NuGet\Install-Package CoreComponentExporter -Version 2025.7.13
<PackageReference Include="CoreComponentExporter" Version="2025.7.13" />
<PackageVersion Include="CoreComponentExporter" Version="2025.7.13" />
<PackageReference Include="CoreComponentExporter" />
paket add CoreComponentExporter --version 2025.7.13
#r "nuget: CoreComponentExporter, 2025.7.13"
#:package CoreComponentExporter@2025.7.13
#addin nuget:?package=CoreComponentExporter&version=2025.7.13
#tool nuget:?package=CoreComponentExporter&version=2025.7.13
DotNet.ExporterToolkit
Una biblioteca poderosa y flexible para exportar datos a diferentes formatos de archivo, con soporte para tipos genéricos y manejo robusto de errores.
Arquitectura del Proyecto
El proyecto está compuesto por dos bibliotecas principales que trabajan juntas:
CoreExcelPackage
- Manejo específico de archivos Excel (.xls y .xlsx)
- Lectura de datos desde hojas de Excel
- Conexión a través de string de conexión o stream
- Conversión de datos a tipos genéricos
DotNet.ExporterToolkit
- Exportación a múltiples formatos (CSV, Excel, JSON, XML)
- Soporte para tipos genéricos
- Manejo de propiedades de cualquier tipo
- Formateo y escapado de datos
- Logging integrado
- Manejo robusto de errores
Instalación
Para usar ambas bibliotecas, instala los paquetes NuGet:
dotnet add package DotNet.ExcelToolkit
dotnet add package DotNet.ExporterToolkit
También están disponibles en el Visual Studio Package Manager:
Install-Package DotNet.ExcelToolkit
Install-Package DotNet.ExporterToolkit
Características Principales
Exportación a múltiples formatos:
- CSV (Comma-Separated Values)
- Excel (Tabulados)
- JSON (JavaScript Object Notation)
- XML (eXtensible Markup Language)
Características avanzadas:
- Soporte para tipos genéricos
- Manejo automático de propiedades de cualquier tipo
- Formateo especial de fechas y strings
- Escapado de caracteres especiales
- Logging integrado
- Manejo robusto de excepciones
- Exportación asíncrona
- Soporte para archivos temporales
- Validación de datos
Instalación
El paquete se puede instalar usando NuGet:
dotnet add package DotNet.ExporterToolkit
También está disponible en el Visual Studio Package Manager:
Install-Package DotNet.ExporterToolkit
Requisitos
- .NET Core 3.1 o superior
- Visual Studio 2019 o superior
Uso Básico
Exportación a CSV
var data = new List<MyClass> {
new MyClass { Id = 1, Name = "John", CreatedDate = DateTime.Now },
new MyClass { Id = 2, Name = "Jane", CreatedDate = DateTime.Now }
};
data.ExportToCsv("archivo.csv");
Exportación a Excel
data.ExportToExcel("archivo.txt", includeHeaders: true);
Exportación a JSON
data.ExportToJson("archivo.json");
Exportación a XML
data.ExportToXml("archivo.xml");
Configuración Avanzada
Formateo Personalizado
// Formateo de fechas personalizado
var data = new List<MyClass> {
new MyClass { Id = 1, Name = "John", CreatedDate = DateTime.Now }
};
data.ExportToCsv("archivo.csv", includeHeaders: true)
.WithDateFormat("dd/MM/yyyy HH:mm:ss")
.WithNumberFormat("N2");
Manejo de Errores
try
{
data.ExportToCsv("archivo.csv");
}
catch (ExportException ex)
{
// Manejo de errores específicos
ExtensionsLogger.LogError(ex, "Error durante la exportación");
}
Mejores Prácticas
Seguridad de Datos
- Validar datos antes de exportar
- Escapar caracteres especiales
- Manejar nulls correctamente
- Usar formateo consistente
Rendimiento
- Usar exportación asíncrona para grandes volúmenes
- Implementar buffering cuando sea necesario
- Manejar memoria eficientemente
- Usar paginación para conjuntos de datos grandes
Logging
- Registrar inicio y fin de exportación
- Registrar errores específicos
- Registrar estadísticas de exportación
- Implementar logging configurable
Manejo de Archivos
- Validar permisos de escritura
- Manejar archivos temporales
- Limpiar recursos correctamente
- Usar rutas seguras
Ejemplos Avanzados
Exportación Asíncrona
await data.ExportToCsvAsync("archivo.csv");
Exportación con Filtrado
var filteredData = data.Where(x => x.IsActive)
.ExportToCsv("archivo_filtrado.csv");
Exportación con Transformación
var transformedData = data.Select(x => new {
x.Id,
x.Name,
FormattedDate = x.CreatedDate.ToString("dd/MM/yyyy")
});
transformedData.ExportToCsv("archivo_transformado.csv");
Soporte y Contribución
Para reportar errores o solicitar características, por favor abre un issue en el repositorio de GitHub.
Licencia
Este proyecto está bajo licencia MIT. Consulta el archivo LICENSE para más detalles.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2026.3.6 | 83 | 3/6/2026 |
| 2026.2.27 | 91 | 2/27/2026 |
| 2026.2.11 | 117 | 2/11/2026 |
| 2026.2.10 | 91 | 2/10/2026 |
| 2025.11.11 | 327 | 11/11/2025 |
| 2025.10.26 | 198 | 10/26/2025 |
| 2025.10.10 | 151 | 10/10/2025 |
| 2025.8.19 | 228 | 8/19/2025 |
| 2025.7.13 | 275 | 7/14/2025 |
| 2025.7.2 | 189 | 7/4/2025 |
| 2025.5.23 | 171 | 5/23/2025 |
| 2025.5.1 | 212 | 5/1/2025 |
| 2025.3.22 | 232 | 3/22/2025 |
| 2025.3.8 | 197 | 3/9/2025 |
| 2025.2.1 | 216 | 2/1/2025 |
| 2025.1.12 | 170 | 1/12/2025 |
| 2025.1.11 | 150 | 1/12/2025 |
| 2024.12.19 | 186 | 12/19/2024 |
| 2024.12.18 | 163 | 12/19/2024 |
| 2024.12.8 | 192 | 12/9/2024 |