Soenneker.Blazor.SheetMapper 4.0.258

Prefix Reserved
dotnet add package Soenneker.Blazor.SheetMapper --version 4.0.258
                    
NuGet\Install-Package Soenneker.Blazor.SheetMapper -Version 4.0.258
                    
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="Soenneker.Blazor.SheetMapper" Version="4.0.258" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Soenneker.Blazor.SheetMapper" Version="4.0.258" />
                    
Directory.Packages.props
<PackageReference Include="Soenneker.Blazor.SheetMapper" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Soenneker.Blazor.SheetMapper --version 4.0.258
                    
#r "nuget: Soenneker.Blazor.SheetMapper, 4.0.258"
                    
#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.
#:package Soenneker.Blazor.SheetMapper@4.0.258
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Soenneker.Blazor.SheetMapper&version=4.0.258
                    
Install as a Cake Addin
#tool nuget:?package=Soenneker.Blazor.SheetMapper&version=4.0.258
                    
Install as a Cake Tool

alternate text is missing from this package README image alternate text is missing from this package README image alternate text is missing from this package README image

Soenneker.Blazor.SheetMapper

A Blazor component and utility library for mapping CSV or tabular files to C# objects.

image

Leverage FilePond for uploads and TomSelect for interactive dropdowns. Automatically extract headers, map columns to your model, and retrieve a clean { property → column } map.

Demo

Features

  • Header extraction from CSV or tab-delimited files
  • Interactive mapping of columns to model properties
  • Automatic heuristic mapping (case‑ and whitespace‑insensitive)
  • Status icons for unmapped, duplicate, and mapped states
  • Show/hide the status‑icon column on demand
  • API to fetch the final mapping as Dictionary<string, string>

Installation

dotnet add package Soenneker.Blazor.SheetMapper

Setup

  1. Register interop in your DI container (e.g., Program.cs):

    builder.Services.AddSheetMapperAsScoped();
    
  2. Import namespace in your _Imports.razor or component:

    @using Soenneker.Blazor.SheetMapper
    

Basic Usage

@page "/import"
@inject ISheetMapperInterop SheetMapperInterop

<SheetMapper
    @ref="sheetMapper"
    TargetType="typeof(Employee)"
    AutomaticallyMap="true"
    ShowStatusIcons="true" />

<button class="btn btn-primary mt-3" @onclick="ShowMap">
    Get Mapping
</button>

@code {
    private SheetMapper? sheetMapper;

    private void ShowMap()
    {
        if (sheetMapper is not null)
        {
            var map = sheetMapper.GetCurrentMap();
            // map: property → CSV column
        }
    }
}

Component Parameters

Parameter Type Default Description
TargetType Type Required. Model type whose writable properties are mapped.
AutomaticallyMap bool false Run auto-mapping heuristic on file load.
ShowStatusIcons bool true Toggle visibility of the status‑icon column.
NotMappedIcon RenderFragment ⚠️ Icon/markup for unmapped state.
DuplicatedIcon RenderFragment 🔁 Icon/markup for duplicate‑mapping state.
MappedIcon RenderFragment Icon/markup for successful mapping.

Public API

  • void AutoMap() Re-run the auto-mapping logic at any time.

  • Dictionary<string, string> GetCurrentMap() Returns { property → selected column }. Unmapped properties return "".


Customization

Status Icons

Override the built-in emojis with your own markup (SVG, <i>, etc.):

<SheetMapper
    TargetType="typeof(Employee)"
    NotMappedIcon="@<i class='fas fa-exclamation-triangle'></i>"
    DuplicatedIcon="@<i class='fas fa-sync-alt'></i>"
    MappedIcon="@<i class='fas fa-check-circle'></i>"
/>

Show/Hide Icon Column

Use the ShowStatusIcons parameter to toggle the entire status‑icon column:


<SheetMapper TargetType="typeof(Employee)" ShowStatusIcons="false" />

Styling

  • CSS classes for fine‑tuning:

    • .map-row — wrapper for each mapping row
    • .status-icon — container for the icon

Override or extend them to match your design system.

Product 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
4.0.258 23 1/29/2026
4.0.257 23 1/29/2026
4.0.256 27 1/29/2026
4.0.255 73 1/27/2026
4.0.254 70 1/27/2026
4.0.253 73 1/27/2026
4.0.252 81 1/26/2026
4.0.251 81 1/25/2026
4.0.250 79 1/23/2026
4.0.249 79 1/23/2026
4.0.248 78 1/23/2026
4.0.247 83 1/22/2026
4.0.246 81 1/22/2026
4.0.245 80 1/22/2026
4.0.244 84 1/21/2026
4.0.243 84 1/21/2026
4.0.242 80 1/21/2026
4.0.241 77 1/21/2026
4.0.240 82 1/20/2026
4.0.239 83 1/19/2026
4.0.238 87 1/19/2026
4.0.237 82 1/19/2026
4.0.236 83 1/19/2026
4.0.235 86 1/14/2026
4.0.234 85 1/14/2026
4.0.233 88 1/14/2026
4.0.232 83 1/14/2026
4.0.231 84 1/14/2026
4.0.230 87 1/14/2026
4.0.229 86 1/13/2026
4.0.228 89 1/13/2026
4.0.227 88 1/13/2026
4.0.226 87 1/13/2026
4.0.225 86 1/12/2026
4.0.224 86 1/10/2026
4.0.223 89 1/10/2026
4.0.222 83 1/10/2026
4.0.221 87 1/9/2026
4.0.220 88 1/9/2026
4.0.219 85 1/9/2026
4.0.218 87 1/9/2026
4.0.217 86 1/9/2026
4.0.216 88 1/8/2026
4.0.215 88 1/8/2026
4.0.214 88 1/8/2026
4.0.213 87 1/8/2026
4.0.212 86 1/7/2026
4.0.211 89 1/7/2026
4.0.210 83 1/7/2026
4.0.209 83 1/7/2026
4.0.208 87 1/6/2026
4.0.207 82 1/6/2026
4.0.206 84 1/6/2026
4.0.205 89 1/6/2026
4.0.204 83 1/5/2026
4.0.203 84 1/5/2026
4.0.202 87 1/5/2026
4.0.201 91 1/4/2026
4.0.200 83 1/4/2026
4.0.199 90 1/3/2026
4.0.198 86 1/3/2026
4.0.197 86 1/3/2026
4.0.196 86 1/3/2026
4.0.195 87 1/2/2026
4.0.194 88 1/2/2026
4.0.193 85 1/2/2026
4.0.192 90 12/31/2025
4.0.191 85 12/31/2025
4.0.190 89 12/31/2025
4.0.189 83 12/31/2025
4.0.188 100 12/28/2025
4.0.187 148 12/21/2025
4.0.186 155 12/21/2025
4.0.185 150 12/21/2025
4.0.184 155 12/21/2025
4.0.183 153 12/21/2025
4.0.182 109 12/20/2025
4.0.181 137 12/20/2025
4.0.180 162 12/20/2025
4.0.179 165 12/20/2025
4.0.178 246 12/19/2025
4.0.177 258 12/19/2025
4.0.176 269 12/18/2025
4.0.175 271 12/18/2025
4.0.174 265 12/18/2025
4.0.173 274 12/18/2025
4.0.172 269 12/16/2025
4.0.171 261 12/16/2025
4.0.170 270 12/16/2025
4.0.169 265 12/16/2025
4.0.168 254 12/15/2025
4.0.167 249 12/15/2025
4.0.166 106 12/13/2025
4.0.165 121 12/13/2025
4.0.164 422 12/11/2025
4.0.163 418 12/11/2025
4.0.162 424 12/9/2025
4.0.161 441 12/9/2025
4.0.160 230 11/22/2025
4.0.159 302 11/21/2025
4.0.158 312 11/21/2025
4.0.157 320 11/21/2025
4.0.156 361 11/21/2025
4.0.155 382 11/21/2025
4.0.154 401 11/20/2025
4.0.153 285 11/17/2025
4.0.152 289 11/12/2025
4.0.151 290 11/12/2025
4.0.150 283 11/12/2025
4.0.149 296 11/11/2025
4.0.148 287 11/11/2025
4.0.147 288 11/11/2025
4.0.146 268 11/10/2025
4.0.145 267 11/10/2025
4.0.144 265 11/10/2025
4.0.143 249 11/10/2025
4.0.142 214 11/9/2025
4.0.141 133 11/7/2025
4.0.140 148 11/7/2025
4.0.139 194 11/7/2025
4.0.138 202 11/6/2025
4.0.137 202 11/5/2025
4.0.136 203 11/5/2025
4.0.135 192 11/4/2025
4.0.134 196 11/4/2025
4.0.133 210 11/4/2025
4.0.132 202 11/2/2025
4.0.131 162 10/31/2025
4.0.130 196 10/31/2025
4.0.129 200 10/30/2025
4.0.128 199 10/29/2025
3.0.127 205 10/29/2025
3.0.126 185 10/27/2025
3.0.125 127 10/24/2025
3.0.124 148 10/24/2025
3.0.123 174 10/22/2025
3.0.122 172 10/17/2025
3.0.121 174 10/17/2025
3.0.120 186 10/16/2025
3.0.119 181 10/15/2025
3.0.118 180 10/15/2025
3.0.117 179 10/15/2025
3.0.116 178 10/8/2025
3.0.115 196 10/8/2025
3.0.114 185 10/8/2025
3.0.113 190 10/5/2025
3.0.112 177 10/5/2025
3.0.111 119 10/4/2025
3.0.110 191 10/2/2025
3.0.109 187 10/1/2025
3.0.108 181 9/30/2025
3.0.107 138 9/27/2025
3.0.106 107 9/27/2025
3.0.105 212 9/22/2025
3.0.104 180 9/21/2025
3.0.103 221 9/20/2025
3.0.102 260 9/19/2025
3.0.101 331 9/19/2025
3.0.100 313 9/18/2025
3.0.99 316 9/17/2025
3.0.98 315 9/17/2025
3.0.97 320 9/17/2025
3.0.96 318 9/17/2025
3.0.95 306 9/17/2025
3.0.94 305 9/17/2025
3.0.93 317 9/17/2025
3.0.92 313 9/16/2025
3.0.91 302 9/16/2025
3.0.90 151 9/13/2025
3.0.89 194 9/11/2025
3.0.88 182 9/10/2025
3.0.87 173 9/10/2025
3.0.86 180 9/10/2025
3.0.85 176 9/10/2025
3.0.84 174 9/9/2025
3.0.83 181 9/9/2025
3.0.82 185 9/7/2025
3.0.81 150 9/7/2025
3.0.80 151 9/7/2025
3.0.79 151 9/6/2025
3.0.78 149 9/6/2025
3.0.77 122 9/5/2025
3.0.76 136 9/5/2025
3.0.75 195 9/4/2025
3.0.74 196 9/4/2025
3.0.73 212 9/4/2025
3.0.72 187 9/4/2025
3.0.71 184 9/4/2025
3.0.70 196 9/4/2025
3.0.69 193 9/4/2025
3.0.68 200 9/3/2025
3.0.67 106 8/23/2025
3.0.66 89 8/23/2025
3.0.65 84 8/23/2025
3.0.64 96 8/22/2025
3.0.63 149 8/17/2025
3.0.62 148 8/17/2025
3.0.61 160 8/15/2025
3.0.60 158 8/15/2025
3.0.59 161 8/15/2025
3.0.58 173 8/14/2025
3.0.57 175 8/14/2025
3.0.56 176 8/13/2025
3.0.55 180 8/13/2025
3.0.54 177 8/12/2025
3.0.53 171 8/12/2025
3.0.52 180 8/12/2025
3.0.51 182 8/12/2025
3.0.50 175 8/12/2025
3.0.49 183 8/11/2025
3.0.48 173 8/11/2025
3.0.47 176 8/11/2025
3.0.46 180 8/11/2025
3.0.45 180 8/11/2025
3.0.44 183 8/11/2025
3.0.43 256 8/7/2025
3.0.42 243 8/7/2025
3.0.41 274 8/5/2025
3.0.40 266 8/5/2025
3.0.39 264 8/5/2025
3.0.38 267 8/5/2025
3.0.37 260 8/5/2025
3.0.36 165 7/30/2025
3.0.35 167 7/30/2025
3.0.34 156 7/29/2025
3.0.33 503 7/24/2025
3.0.32 510 7/24/2025
3.0.31 193 7/9/2025
3.0.30 194 7/9/2025
3.0.29 191 7/9/2025
3.0.28 127 7/4/2025
3.0.27 192 7/3/2025
3.0.26 197 7/3/2025
3.0.25 194 7/2/2025
3.0.24 183 7/2/2025
3.0.23 183 7/1/2025
3.0.22 144 6/28/2025
3.0.21 147 6/28/2025
3.0.20 157 6/28/2025
3.0.19 101 6/28/2025
3.0.18 207 6/25/2025
3.0.17 192 6/25/2025
3.0.16 187 6/25/2025
3.0.15 350 6/12/2025
3.0.14 343 6/12/2025
3.0.13 330 6/12/2025
3.0.12 342 6/11/2025
3.0.11 341 6/11/2025
3.0.10 334 6/11/2025
3.0.9 342 6/10/2025
3.0.8 196 6/3/2025
3.0.7 197 6/3/2025
3.0.6 197 6/3/2025
3.0.5 191 6/3/2025
3.0.4 202 5/28/2025
3.0.3 199 5/28/2025
3.0.2 200 5/28/2025
3.0.1 202 5/28/2025