Flowthru.Extensions.Excel
0.26.0-preview.112
dotnet add package Flowthru.Extensions.Excel --version 0.26.0-preview.112
NuGet\Install-Package Flowthru.Extensions.Excel -Version 0.26.0-preview.112
<PackageReference Include="Flowthru.Extensions.Excel" Version="0.26.0-preview.112" />
<PackageVersion Include="Flowthru.Extensions.Excel" Version="0.26.0-preview.112" />
<PackageReference Include="Flowthru.Extensions.Excel" />
paket add Flowthru.Extensions.Excel --version 0.26.0-preview.112
#r "nuget: Flowthru.Extensions.Excel, 0.26.0-preview.112"
#:package Flowthru.Extensions.Excel@0.26.0-preview.112
#addin nuget:?package=Flowthru.Extensions.Excel&version=0.26.0-preview.112&prerelease
#tool nuget:?package=Flowthru.Extensions.Excel&version=0.26.0-preview.112&prerelease
Flowthru.Extensions.Excel
Read Flowthru Catalog Items from Excel workbooks. Adds the Excel format to the Catalog
builder, so any Item backed by a row sequence loads from a .xlsx worksheet with a one-line
declaration. Excel here is read-only — it's for ingesting spreadsheets someone handed you,
not for emitting them; an Excel-backed Item reports that it can't be written, and a Flow that
tries to save to one fails fast before it touches the workbook.
Mental model
Storage in Flowthru is three independent axes: format (how bytes serialize) × medium
(where bytes live) × container (the in-memory shape). This package supplies one format —
Excel. Bring the spreadsheet mental model: a workbook holds named sheets, a sheet has a header
row, and each row below it is a record. You name the sheet to read; Flowthru maps each row onto
your schema. It doesn't care where the .xlsx lives (that's the medium's job), only how a row
maps to your typed schema.
Install
dotnet add package Flowthru.Extensions.Excel
Declare an Excel-backed Item in your Catalog. Unlike the other formats, Excel requires a sheet name — a workbook can hold many sheets, so you say which one:
public IItem<IEnumerable<ShuttleSchema>> Shuttles =>
CreateItem(() => Item.Of<IEnumerable<ShuttleSchema>>("Shuttles")
.Excel()
.AtPath($"{_basePath}/Data/_01_Raw/shuttles.xlsx")
.WithSheet("Sheet1")
.Build());
If your nullable columns use placeholder strings for blanks, declare them with .WithNullValues(...)
so they parse as null rather than literal text.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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.7.0)
- ExcelDataReader.DataSet (>= 3.7.0)
- Flowthru.Core (>= 0.26.0-preview.112)
- Microsoft.Extensions.Configuration (>= 10.0.4)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.4)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.4)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.4)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.4)
- Microsoft.Extensions.Options (>= 10.0.4)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Flowthru.Extensions.Excel:
| Package | Downloads |
|---|---|
|
Flowthru
A type-safe data engineering framework for .NET. Includes CSV, Parquet, and Excel format support. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.26.0-preview.112 | 50 | 6/5/2026 |
| 0.25.0 | 106 | 6/2/2026 |
| 0.25.0-preview.110 | 54 | 6/2/2026 |
| 0.24.0-preview.108 | 57 | 6/2/2026 |
| 0.21.0 | 108 | 5/24/2026 |
| 0.21.0-preview.101 | 60 | 5/24/2026 |
| 0.20.0 | 108 | 5/23/2026 |
| 0.20.0-preview.100 | 55 | 5/23/2026 |
| 0.19.0-preview.99 | 62 | 5/23/2026 |
| 0.18.5-preview.98 | 57 | 5/22/2026 |
| 0.18.4-preview.97 | 52 | 5/22/2026 |
| 0.18.3 | 97 | 5/20/2026 |
| 0.18.3-preview.95 | 59 | 5/19/2026 |
| 0.18.2 | 105 | 5/18/2026 |
| 0.18.2-preview.93 | 54 | 5/18/2026 |
| 0.18.1 | 103 | 5/15/2026 |
| 0.18.1-preview.92 | 52 | 5/14/2026 |
| 0.18.0-preview.91 | 59 | 5/14/2026 |
| 0.17.5 | 102 | 5/13/2026 |