DataJuggler.Blazor.FileUpload 7.0.6

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

// Install DataJuggler.Blazor.FileUpload as a Cake Tool
#tool nuget:?package=DataJuggler.Blazor.FileUpload&version=7.0.6                

BlazorFileUpload

This is a wrapper of Steve Sanderson's BlazorFileInput

This project has been updated to .NET 7.

To see a complete working example, with source code please visit:

<img src=https://excelerate.datajuggler.com/Images/ExcelerateLogoSmallWhite.png height=128 width=128> <img src=https://excelerate.datajuggler.com/Images/logotextsparkled.png>

Blazor Excelerate <br /> https://excelerate.datajuggler.com <br /> Code Generate C# Classes From Excel Header Rows

The source code for the above project is available at:

https://github.com/DataJuggler/Blazor.Excelerate

Here is an example of creating a file upload component:

@using DataJuggler.Blazor.FileUpload

<FileUpload CustomSuccessMessage="Your file uploaded successfully." 
    OnReset="OnReset" ResetButtonClassName="localbutton" ShowStatus="false"
    PartialGuidLength="12" MaxFileSize=@UploadLimit FilterByExtension="true" 
    ShowCustomButton="true"  ButtonText="Upload Excel" OnChange="OnFileUploaded"
    CustomButtonClassName="@OrangeButton" AllowedExtensions=".xlsx"
    ShowResetButton="false" AppendPartialGuid="true"
    CustomExtensionMessage="Only .xlsx extensions are allowed." 
    InputFileClassName="customfileupload" Visible=false Status="Refresh"
    FileTooLargeMessage=@FileTooLargeMessage>
</FileUpload>

To handle the File Upload event 'OnFileUploaded'. The code shown also starts a progress bar timer and reads the sheet names using Nuget package DataJuggler.Excelrate (the Nuget package that powers Blazor Excelerate).

#region OnFileUploaded(UploadedFileInfo file)
/// <summary>
/// This method On File Uploaded
/// </summary>
public void OnFileUploaded(UploadedFileInfo file)
{
    // if the file was uploaded
    if (!file.Aborted)
    {
        // Show the Progressbar
        ShowProgress = true;
        
        // if the ProgressBar
        if (HasProgressBar)
        {
            // Start the Timer
            ProgressBar.Start();
        }
        
        // Create a model
        GetSheetNamesModel model = new GetSheetNamesModel();
        
        // Set the model
        model.FullPath = file.FullPath;
        
        // Store this for later
        ExcelPath = file.FullPath;
        
        // reload the model
        HandleDiscoverSheets(model);
    }
    else
    {
        // for debugging only
        if (file.HasException)
        {
            // for debugging only
            string message = file.Exception.Message;
        }
    }
}
#endregion

It is on my to do list to handle multiple file uploads, I just haven't had a use case that I need this feature yet.

Volunteers are welcome to add this and I will merge the pull request.

Product Compatible and additional computed target framework versions.
.NET net7.0 is compatible.  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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on DataJuggler.Blazor.FileUpload:

Package Downloads
DataJuggler.BlazorGallery

A project template for creating a Blazor Image Gallery project that uses SQL Server for a backend. You will need SQL Server or SQL Server Express to run this project. See the Read Me for more info. Watch this video to see a demo https://youtu.be/yQz1dqYiy2g.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.0.2 407 9/13/2024
8.0.1 1,630 5/19/2024
8.0.0 1,570 11/17/2023
7.2.3 621 8/27/2023
7.2.2 145 8/26/2023
7.2.1 183 8/14/2023
7.2.0 176 8/13/2023
7.1.2 200 7/22/2023
7.1.1 175 7/22/2023
7.1.0 204 7/12/2023
7.0.6 222 6/21/2023
7.0.5 277 5/8/2023
7.0.4 1,998 4/5/2023
7.0.3 301 3/6/2023
7.0.1 247 3/6/2023
7.0.0 1,184 11/9/2022
7.0.0-rc1 130 10/21/2022
6.0.3 4,550 7/6/2022
6.0.2 729 6/8/2022
6.0.1 2,227 1/23/2022
5.0.1 4,507 11/12/2021
5.0.0 346 11/11/2021
2.0.0 374 11/11/2021
1.6.2 462 10/14/2021
1.6.1 408 10/13/2021
1.6.0 3,215 3/10/2021
1.5.1 6,821 11/30/2020
1.5.0 479 11/27/2020
1.4.1 522 11/13/2020
1.4.0 488 11/13/2020
1.3.5 16,370 4/8/2020
1.3.4 3,100 3/6/2020
1.3.3 680 2/26/2020
1.3.2 751 2/7/2020
1.3.1 553 2/7/2020
1.3.0 750 1/25/2020
1.2.8 640 1/24/2020
1.2.7 3,296 1/15/2020
1.2.6 584 1/14/2020
1.2.5 536 1/14/2020
1.2.4 571 1/13/2020
1.2.3 510 1/13/2020
1.2.2 519 1/13/2020
1.2.1 671 1/12/2020
1.2.0 663 1/12/2020
1.1.0 703 1/5/2020
1.0.11-Preview 401 12/3/2019
1.0.10-Preview 302 11/16/2019
1.0.9-Preview 268 11/12/2019
1.0.8-Preview 273 11/12/2019
1.0.7-Preview 276 11/12/2019
1.0.6-Preview 270 11/11/2019
1.0.5-Preview 267 11/11/2019

6.21.2023: I updated 4 Nuget packages:
Microsoft.AspCore.Components, Microsoft.AspCore.Components.Web, DataJuggler.Blazor.Components
and DataJuggler.UltimateHelper.

5.8.2023: Updated Microsoft.AspCore.Components and Microsoft.AspCore.Components.Web.
Also made this project be able to implement IBlazorComponent, so now it can register
with IBlazorComponentParents. This allos the parent to send a message 'OnReset", to force
a reset.


4.5.2023: Upgraded Nuget package DataJuggler.UltimateHelper and
Microsoft.AspCore.Components and Microsoft.AspCore.Components.Web.

3.6.2023: Added a Read Me with links to Blazor Excelerate examples.
v7.0.2


3.6.2023: Updated some Nuget packages
v7.0.1

12.3.2022: Released 7.0.0 version.

10.20.2022:
v7.0.0.-rc1: This version is listed as pre-release until .NET7 is out of preview.

This version has been upaded for .NET7.

7.6.2022
Version 6.0.3: I set the default MaxFileUpload to 40 meg by default.
If you don't set any value, the file upload is aborted, and yesterday I had to
add the project reference to figure this out. I figure this will make it easier.
I may add an Aborted Reason when I get some time.