actionETL 0.40.0

Cross-platform ETL library for easily writing high performance, highly productive ETL data processing applications in C#, VB, etc. running on Windows and Linux. Well-suited to both small and truly large and complex projects.

- Community: Get your FREE license at
- Trial: Evaluate the commercial versions at
- Commercial: View and purchase the product at

### Supported Platforms ###

- .NET Framework 4.6.1+
- .NET Standard 2.0+
- .NET Core 2.1+ (via .NET Standard 2.0)
- .NET 5+ (via .NET Standard 2.0)
- Windows and Linux
- On-premises and cloud

### Features ###

- Extensive dataflow and control flow capabilities
- MariaDB, MySQL, PostgreSQL, SQLite, and SQL Server targeted database providers
- ODBC database provider for other databases
- High performance bulk insert
- Spreadsheet, delimited, fixed format, etc.
- Use to easily retrieve new versions of actionETL

and much more, see for details.

Install-Package actionETL -Version 0.40.0
dotnet add package actionETL --version 0.40.0
<PackageReference Include="actionETL" Version="0.40.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add actionETL --version 0.40.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: actionETL, 0.40.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install actionETL as a Cake Addin
#addin nuget:?package=actionETL&version=0.40.0

// Install actionETL as a Cake Tool
#tool nuget:?package=actionETL&version=0.40.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

Added additional MySql/MariaDB provider "MySqlConnector" supporting high performance Bulk Insert.

Added transaction support to AdbMySqlConnectorBulkInsertTarget and AdbSqlClientBulkInsertTarget.

Added AdbSqlClientBulkInsertTarget.ColumnOrderHints and renamed SqlBulkCopyOptions to CopyOptions.

- Reduced database round-trips
- Renamed SetMaxRows() to SetRowLimits()
- Deprecated SetSingleRow()
- Support setting default transaction size and disabling transactions
- Fixed column mapping bug
- ErrorOutput:
 - Fixed redirection of rows on insert exception
 - Linking disables creating transactions
 - Linking throws if there is a pre-existing transaction

Added AdbProvider.WithSql92InsertStatement() to simplify setting default batch and transaction sizes.

IAdbInsertStatementService for AdbInsertTarget:
- Renamed DefaultParametersPerStatement to DefaultValuesPerBatch
- Renamed MaxParametersPerStatement to MaxValuesPerBatch
- Added AConfigSettings.InsertStatementValuesPerBatch
- Added AConfigSettings.InsertStatementValuesPerTransaction
- Added rowsPerBatch parameter to Create()

- Added SendErrorBuffer() for sending a batch of rows
- Only log exception and message on the first row in a batch
- Fixed bug when logging a null column

Removed deprecated InputPort.TakeRows().

### Package Dependency Changes ###

- FileHelpers 3.4.1 > 3.4.2
- Microsoft.Data.SqlClient 2.0.1 > 2.1.2
- MySqlConnector 1.3.3 added
- MySql.Data 8.0.22 > 8.0.24
- NodaTime 2.4.8 > 2.4.13
- Npgsql 4.1.6 > 4.1.9
- System.Net.NameResolution removed
- System.Net.Primitives removed

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
0.40.0 2,711 5/3/2021
0.39.0 2,459 11/22/2020
0.38.0 1,246 10/27/2020
0.37.0 1,234 9/20/2020
0.36.1 709 9/2/2020
0.36.0 782 8/21/2020