PandaTech.FileExporter 3.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package PandaTech.FileExporter --version 3.0.1                
NuGet\Install-Package PandaTech.FileExporter -Version 3.0.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="PandaTech.FileExporter" Version="3.0.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PandaTech.FileExporter --version 3.0.1                
#r "nuget: PandaTech.FileExporter, 3.0.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install PandaTech.FileExporter as a Cake Addin
#addin nuget:?package=PandaTech.FileExporter&version=3.0.1

// Install PandaTech.FileExporter as a Cake Tool
#tool nuget:?package=PandaTech.FileExporter&version=3.0.1                

File Exporter

Exports given data into csv, xls, xlsx and pdf formats.

Structure

Package consists of static FileExporter class which contains all needed calls to export given data into supported types defined inside ExportType enum.

Supported formats are: CSV, XLS, XLSX and PDF.

Usage

Install package PandaTech.FileExporter from Nexus.

Service

Implement your service which will use the PandaTech.FileExporter package.

public class Service
{
    public byte[] XlsXlsxArray(List<string> list)
    {
        return FileExporter.ToExcelArray(GetDtos(list));
    }

    public byte[] CsvArray(List<string> list)
    {
        return FileExporter.ToCsvArray(GetDtos(list));
    }

    public byte[] PdfArray(List<string> list)
    {
        return FileExporter.ToExcelArray(GetDtos(list));
    }
}
Controller

Use service calls to export returned byte[] data into given format from ExportType enum.

[HttpGet("export-to")]
public IActionResult ExportTo([FromQuery] ExportType exportType, [FromQuery] List<string> data)
{
    try
    {
        return exportType switch
        {
            ExportType.XLSX => File(_service.XlsXlsxArray(data), MimeTypes.XLSX, $"Export.xlsx"),
            ExportType.XLS => File(_service.XlsXlsxArray(data), MimeTypes.XLS, $"Export.xls"),
            ExportType.CSV => File(_service.CsvArray(data), MimeTypes.CSV, $"Export.csv"),
            ExportType.PDF => File(_service.PdfArray(data), MimeTypes.PDF, $"Export.pdf"),
            _ => NoContent() 
        };
    }
    catch (Exception)
    {
        return BadRequest();
    }
}
Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on PandaTech.FileExporter:

Package Downloads
Pandatech.SharedKernel.Postgres

Pandatech.SharedKernel.Postgres simplifies PostgreSQL integration in ASP.NET Core applications by providing utilities for Entity Framework Core setup, health checks, and other enhancements.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
4.0.0 50 11/21/2024
3.3.3 115 10/18/2024
3.3.2 110 8/27/2024
3.3.1 132 8/23/2024
3.3.0 115 8/23/2024
3.2.0 89 7/19/2024
3.1.1 92 6/28/2024
3.1.0 106 6/28/2024
3.0.10 116 6/28/2024
3.0.9 103 6/21/2024
3.0.8 112 5/13/2024
3.0.7 72 5/2/2024
3.0.6 114 4/29/2024
3.0.5 101 4/29/2024
3.0.4 115 4/26/2024
3.0.3 103 4/26/2024
3.0.2 116 4/26/2024
3.0.1 120 4/26/2024
3.0.0 122 4/26/2024
2.0.2 132 4/4/2024

Structure change