ETLBox 3.5.2-alpha

This is a prerelease version of ETLBox.
There is a newer version of this package available.
See the version list below for details.
dotnet add package ETLBox --version 3.5.2-alpha                
NuGet\Install-Package ETLBox -Version 3.5.2-alpha                
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="ETLBox" Version="3.5.2-alpha" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add ETLBox --version 3.5.2-alpha                
#r "nuget: ETLBox, 3.5.2-alpha"                
#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 ETLBox as a Cake Addin
#addin nuget:?package=ETLBox&version=3.5.2-alpha&prerelease

// Install ETLBox as a Cake Tool
#tool nuget:?package=ETLBox&version=3.5.2-alpha&prerelease                

What is ETLBox

ETLBox is a lightweight ETL (extract, transform, load) library and data integration toolbox for .NET. You can use it to read any data from different sources and connect them with customizable transformations. Finally, you can export the data into different databases, web endpoints, file types or any other destinations. While data is processed in memory, you can choose between different transformation components to harmonize, filter, aggregate, validate and clean your data.

ETLBox is a fully functional alternative to other ETL tools like SQLServer Integrations Services (SSIS) or Azure Data Factory. The main difference to other toolsets is that it doesn’t come with a User Interface. But no worries! Working with ETLBox, you will discover that creating data flows programmatically is the best approach for solving most of your ETL and data integration related problems.

Why should I choose ETLBox?

Here are a few things you can do with ETLBox:

  • Convert incoming data to a common format.
  • Prepare data for analysis and visualization.
  • Migrate between databases.
  • Share data processing logic across web apps, batch jobs, and APIs.
  • Power your data ingestion and integration tools.
  • Consume large CSV, Excel or Json files.
  • Process big data with a limited amount of memory.
  • Bulk insert, update or delete into your database.

Core concepts

ETLBox is a data processing engine based on .NET Core, giving you the power to create your own ETL processes. This engine runs inside your applications, APIs, and jobs to extract, filter, transform, migrate data on-the-fly. ETLBox speeds up your development by providing an easy-to-use toolbox for integrating your data from different sources within your app and load them into any target you like.

Learn more: www.etlbox.net

Ready to learn more? Visit www.etlbox.net and get started with coding your own ETL jobs with C#!

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  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 was computed.  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 was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (32)

Showing the top 5 NuGet packages that depend on ETLBox:

Package Downloads
ETLBox.SqlServer

This is the SQL Server connector for ETLBox. It enables integration with Microsoft SQL Server for handling structured data in ETL workflows. ETLBox is a complete ETL (Extract, Transform, Load) library and data integration toolbox for .NET. # Build scalable, code-first ETL pipelines for SQL, NoSQL, APIs, and flat files. # Automate data movement, transformation, and synchronization with minimal memory usage. # Ideal for data warehousing, migrations, and big data processing. Simplify your data integration workflow: ETLBox enables efficient, asynchronous data processing by reading from databases, APIs, and file formats like CSV, Excel, and JSON. Transform data dynamically with row-based, batch, or lookup transformations, and read or write from/to multiple destinations in parallel. Key Features: * Stream large datasets efficiently without loading everything into memory * Maximize performance with parallel, task-based data flow execution * Connect to various data sources with built-in connectors or extend with custom components For tutorials, examples, and documentation, visit: https://www.etlbox.net/

ETLBox.Json

This is the JSON connector for ETLBox. It lets you handle structured and semi-structured JSON data, whether working with files or APIs. ETLBox is a complete ETL (Extract, Transform, Load) library and data integration toolbox for .NET. # Build scalable, code-first ETL pipelines for SQL, NoSQL, APIs, and flat files. # Automate data movement, transformation, and synchronization with minimal memory usage. # Ideal for data warehousing, migrations, and big data processing. Simplify your data integration workflow: ETLBox enables efficient, asynchronous data processing by reading from databases, APIs, and file formats like CSV, Excel, and JSON. Transform data dynamically with row-based, batch, or lookup transformations, and read or write from/to multiple destinations in parallel. Key Features: * Stream large datasets efficiently without loading everything into memory * Maximize performance with parallel, task-based data flow execution * Connect to various data sources with built-in connectors or extend with custom components For tutorials, examples, and documentation, visit: https://www.etlbox.net/

ETLBox.Postgres

This is the PostgreSQL connector for ETLBox. It supports reading from and writing to PostgreSQL databases for scalable data pipelines. ETLBox is a complete ETL (Extract, Transform, Load) library and data integration toolbox for .NET. # Build scalable, code-first ETL pipelines for SQL, NoSQL, APIs, and flat files. # Automate data movement, transformation, and synchronization with minimal memory usage. # Ideal for data warehousing, migrations, and big data processing. Simplify your data integration workflow: ETLBox enables efficient, asynchronous data processing by reading from databases, APIs, and file formats like CSV, Excel, and JSON. Transform data dynamically with row-based, batch, or lookup transformations, and read or write from/to multiple destinations in parallel. Key Features: * Stream large datasets efficiently without loading everything into memory * Maximize performance with parallel, task-based data flow execution * Connect to various data sources with built-in connectors or extend with custom components For tutorials, examples, and documentation, visit: https://www.etlbox.net/

ETLBox.Csv

This is the CSV connector for ETLBox. It helps you read and write data in CSV format, making it easy to handle flat-file data for import, export, and transformations. ETLBox is a complete ETL (Extract, Transform, Load) library and data integration toolbox for .NET. # Build scalable, code-first ETL pipelines for SQL, NoSQL, APIs, and flat files. # Automate data movement, transformation, and synchronization with minimal memory usage. # Ideal for data warehousing, migrations, and big data processing. Simplify your data integration workflow: ETLBox enables efficient, asynchronous data processing by reading from databases, APIs, and file formats like CSV, Excel, and JSON. Transform data dynamically with row-based, batch, or lookup transformations, and read or write from/to multiple destinations in parallel. Key Features: * Stream large datasets efficiently without loading everything into memory * Maximize performance with parallel, task-based data flow execution * Connect to various data sources with built-in connectors or extend with custom components For tutorials, examples, and documentation, visit: https://www.etlbox.net/

ETLBox.MySql

This is the MySQL connector for ETLBox. It lets you connect to MySQL databases, handling relational data for ETL tasks and integrations. ETLBox is a complete ETL (Extract, Transform, Load) library and data integration toolbox for .NET. # Build scalable, code-first ETL pipelines for SQL, NoSQL, APIs, and flat files. # Automate data movement, transformation, and synchronization with minimal memory usage. # Ideal for data warehousing, migrations, and big data processing. Simplify your data integration workflow: ETLBox enables efficient, asynchronous data processing by reading from databases, APIs, and file formats like CSV, Excel, and JSON. Transform data dynamically with row-based, batch, or lookup transformations, and read or write from/to multiple destinations in parallel. Key Features: * Stream large datasets efficiently without loading everything into memory * Maximize performance with parallel, task-based data flow execution * Connect to various data sources with built-in connectors or extend with custom components For tutorials, examples, and documentation, visit: https://www.etlbox.net/

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.7.0 197 3/7/2025
3.6.1 19,119 1/6/2025
3.5.2 3,657 12/20/2024
3.5.2-beta 84 12/10/2024
3.5.2-alpha 76 12/3/2024
3.5.1 911 11/15/2024
3.5.0 1,998 10/14/2024
3.4.4 849 9/30/2024
3.4.3 1,187 9/12/2024
3.4.2 1,064 9/3/2024
3.4.1 1,640 7/15/2024
3.4.0 2,875 5/29/2024
3.3.0 3,731 3/14/2024
3.2.0 11,124 1/11/2024
3.1.0 6,145 11/24/2023
3.0.2 15,075 10/6/2023
3.0.1 2,360 9/27/2023
3.0.0 6,426 7/11/2023
2.7.1 2,516 6/5/2023
2.7.0 5,118 4/4/2023
2.6.8 6,661 2/9/2023
2.6.7 4,679 1/9/2023
2.6.6 8,235 10/28/2022
2.6.5 6,970 10/19/2022
2.6.4 7,073 10/10/2022
2.6.3 7,112 9/26/2022
2.6.2 7,180 7/8/2022
2.6.1 7,607 5/19/2022
2.6.0 7,481 3/22/2022
2.5.2 7,356 12/30/2021
2.5.1 4,574 10/8/2021
2.5.0 8,256 9/27/2021
2.4.4 5,516 8/4/2021
2.4.3 4,286 7/16/2021
2.4.2 4,310 7/2/2021
2.4.1 9,380 5/17/2021
2.4.0 4,130 4/13/2021
2.3.2 1,765 3/2/2021
2.3.1 4,167 2/16/2021
2.3.0 5,372 1/11/2021
2.2.5 4,391 12/21/2020
2.2.4 3,692 12/15/2020
2.2.3 4,004 12/4/2020
2.2.1 1,589 11/23/2020
2.2.0 4,467 11/17/2020
2.1.4-beta 1,279 10/28/2020
2.1.4-alpha 784 10/24/2020
2.1.3 1,735 10/23/2020
2.1.2 5,495 9/24/2020
2.1.1 1,726 9/3/2020
2.1.0 3,893 9/3/2020
2.0.7 1,118 8/13/2020
2.0.6 1,180 8/13/2020
2.0.5 1,817 7/14/2020
2.0.4 1,613 7/9/2020
2.0.3 1,541 7/1/2020
2.0.2 3,958 7/1/2020
2.0.1 3,660 6/19/2020
2.0.0 3,220 6/10/2020
1.8.9 1,665 6/10/2020
1.8.8 1,494 5/27/2020
1.8.8-beta 1,096 5/24/2020
1.8.8-alpha 1,137 5/18/2020
1.8.7 17,248 5/12/2020
1.8.7-alpha 1,047 4/22/2020
1.8.6 4,036 4/21/2020
1.8.5 2,510 4/9/2020
1.8.4 1,363 4/6/2020
1.8.3 3,104 3/24/2020
1.8.2 1,379 3/9/2020
1.8.2-alpha 954 2/28/2020
1.8.1 2,633 2/27/2020
1.8.0 2,315 2/22/2020
1.8.0-rc2 956 2/15/2020
1.8.0-rc1 810 2/14/2020
1.8.0-beta 799 2/10/2020
1.8.0-alpha 888 2/4/2020
1.7.7 1,475 1/29/2020
1.7.6 1,286 1/15/2020
1.7.5 1,270 1/5/2020
1.7.5-alpha 842 1/3/2020
1.7.4 1,181 1/2/2020
1.7.4-alpha 816 12/31/2019
1.7.3 1,148 12/26/2019
1.7.2 1,153 12/16/2019
1.7.1 1,686 11/30/2019
1.7.0 983 11/25/2019
1.6.5 1,068 11/22/2019
1.6.4 1,029 11/17/2019
1.6.3 1,692 11/8/2019
1.6.2 1,055 11/4/2019
1.6.2-alpha 840 10/22/2019
1.6.1 1,391 10/18/2019
1.6.0 1,058 10/7/2019
1.5.0 1,134 9/13/2019
1.4.2 1,045 8/30/2019
1.4.1 966 8/27/2019
1.4.0 982 8/8/2019
1.3.2 957 8/5/2019
1.3.1 1,093 6/26/2019
1.3.0 1,066 6/6/2019
1.2.3 1,010 6/5/2019
1.2.2 1,114 5/24/2019
1.2.1 1,053 4/22/2019
1.2.0 1,108 4/13/2019
1.1.2 1,141 3/28/2019
1.1.1 1,450 2/2/2019
1.1.0 1,142 1/28/2019
1.1.0-beta 977 1/14/2019
1.0.1 1,236 12/20/2018
1.0.0 1,151 12/17/2018
0.1.1 1,273 12/10/2018

What's new in 3.5.2 Alpha:

Features:
- ColumnTransformation: ReorderFunc now accepts object as return value, e.g. for sorting of string or date values
- Pivot: PivotValues now use same aggregation methods, custom functions and predicates like AggregationColumn
- Pivot: Added GrandTotal for columns and rows
- Pivot: ValueCombination has been removed
- Pivot: Added FlattenAggregationResults to flatten data if 2 or more PivotValues are used