NPipeline.Connectors.Excel
0.69.0
dotnet add package NPipeline.Connectors.Excel --version 0.69.0
NuGet\Install-Package NPipeline.Connectors.Excel -Version 0.69.0
<PackageReference Include="NPipeline.Connectors.Excel" Version="0.69.0" />
<PackageVersion Include="NPipeline.Connectors.Excel" Version="0.69.0" />
<PackageReference Include="NPipeline.Connectors.Excel" />
paket add NPipeline.Connectors.Excel --version 0.69.0
#r "nuget: NPipeline.Connectors.Excel, 0.69.0"
#:package NPipeline.Connectors.Excel@0.69.0
#addin nuget:?package=NPipeline.Connectors.Excel&version=0.69.0
#tool nuget:?package=NPipeline.Connectors.Excel&version=0.69.0
NPipeline Excel Connector
Source and sink nodes for Excel workbooks in NPipeline pipelines. The source reads a sheet of an XLSX, XLSM or XLS file with ExcelDataReader; the sink streams XLSX workbooks with typed, formatted cells and constant memory.
About NPipeline
NPipeline is a high-performance, extensible data processing framework for .NET that enables developers to build scalable and efficient pipeline-based applications. It provides a rich set of components for data transformation, aggregation, branching, and parallel processing, with built-in support for resilience patterns and error handling.
Installation
dotnet add package NPipeline.Connectors.Excel
Targets .NET 8.0, 9.0 and 10.0.
Features
- Header binding: columns bind to members by header, case-insensitively, once per sheet;
[Column]and[IgnoreColumn]control the mapping. Positional records,initaccessors andrequiredmembers work. - Strict conversion:
1.7is not anint, text is parsed culture-invariantly, and date cells read asDateTime,DateOnly,DateTimeOffsetorTimeOnly. Bad cells are row errors: fail, skip or dead-letter. - Sheet selection: by name or position, with title rows skipped and empty rows ignored.
- Streaming writes: rows go to storage as they are written, to any provider, including S3 and Azure.
- Typed cells: numbers, booleans and dates are real cells, and dates are formatted as dates. Leading and trailing spaces, line breaks and control characters round-trip.
- Presentation: a bold header, optionally frozen and with filter buttons.
- Limits enforced: Excel's row, column and cell-length limits fail with a clear message instead of a corrupt file.
Usage
using NPipeline.Connectors.Excel;
using NPipeline.StorageProviders.Models;
public sealed record Order(int Id, string Customer, decimal Total, DateOnly Placed);
public sealed class OrdersPipeline : IPipelineDefinition
{
public void Define(PipelineBuilder builder, PipelineContext context)
{
var source = builder.AddSource(
ExcelConnector.Source<Order>(StorageUri.FromFilePath("orders.xlsx"), o => o with { SheetName = "Orders" }),
"orders");
var sink = builder.AddSink(
ExcelConnector.Sink<Order>(StorageUri.FromFilePath("report.xlsx"), o => o with { FreezeHeader = true, AutoFilter = true }),
"report");
builder.Connect(source, sink);
}
}
See the Excel connector documentation for every option, and File Connectors: Shared Behaviour for globs, atomic writes, row errors and metrics.
Related Packages
- NPipeline - Core pipeline framework
- NPipeline.Connectors - Storage abstractions and base connectors
- NPipeline.Extensions.DependencyInjection - Dependency injection integration
License
This package is licensed under the Business Source License 1.1.
Free for non-production use. Production use is free for organizations with 4 or fewer developers and annual revenue of $5M AUD or less. Larger organizations require a commercial license. This license automatically converts to MIT two years after each release.
| Product | Versions 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. 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 is compatible. 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. |
-
net10.0
- ExcelDataReader (>= 3.9.0)
- NPipeline.Connectors (>= 0.69.0)
- NPipeline.StorageProviders (>= 0.69.0)
-
net8.0
- ExcelDataReader (>= 3.9.0)
- NPipeline.Connectors (>= 0.69.0)
- NPipeline.StorageProviders (>= 0.69.0)
-
net9.0
- ExcelDataReader (>= 3.9.0)
- NPipeline.Connectors (>= 0.69.0)
- NPipeline.StorageProviders (>= 0.69.0)
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 |
|---|---|---|
| 0.69.0 | 0 | 10/1/2026 |
| 0.68.0 | 0 | 10/1/2026 |
| 0.67.0 | 40 | 9/29/2026 |
| 0.66.1 | 52 | 9/28/2026 |
| 0.66.0 | 52 | 9/28/2026 |
| 0.65.1 | 57 | 9/27/2026 |
| 0.65.0 | 53 | 9/26/2026 |
| 0.64.0 | 51 | 9/26/2026 |
| 0.63.0 | 79 | 9/24/2026 |
| 0.62.0 | 78 | 9/24/2026 |
| 0.61.1 | 86 | 9/22/2026 |
| 0.61.0 | 81 | 9/22/2026 |
| 0.60.0 | 84 | 9/22/2026 |
| 0.59.0 | 88 | 9/21/2026 |
| 0.58.0 | 79 | 9/21/2026 |
| 0.57.0 | 86 | 9/21/2026 |
| 0.56.0 | 88 | 9/21/2026 |
| 0.55.0 | 91 | 9/21/2026 |
| 0.54.1 | 88 | 9/21/2026 |
| 0.54.0 | 86 | 9/19/2026 |