The Blazor File Upload is a component for uploading files, images, documents, and audio and video files to a server. The File Upload works in both WebAssembly and Server-side Blazor apps, and also supports a rich set of features that include multiple file selection, progress bars, auto-uploading, drag and drop, folder (directory) uploading, file validation, and more.
Manage large file uploads efficiently without any performance degradation using chunk upload. The large files are sliced into small chunks and asynchronously uploaded to the server in a sequential order.
A built-in feature to pause, resume, retry, and cancel a file upload. This helps users upload high-resolution images, videos, and other large files safely. Additionally, it provides an option to pause and resume automatically based on server connection.
Select multiple files and upload them to a server at the same time. This is useful for uploading images to a gallery and file sharing applications.
The Blazor File Upload component can upload multiple files by simply dragging them from the file explorer to the drop area (drop zone), which is a more user-friendly way to select and upload multiple files.
The action buttons of the Blazor File Upload component are completely customizable, including its file list, which allows users create their own design for the Blazor File Upload UI.
Upload various file types and impose restrictions to allow only valid types of files from the client-side, which is mandatory before uploading a file in the web application.
Users can add validation to check file size limits with minimum and maximum ranges, number of files required, total size, and MIME type before uploading a file to a server.
The Blazor File Upload component accepts a folder (directory) as a file source for uploading. It uploads all the files (includes subfolders) of the selected folder.
The Blazor File Upload component processes images from the clipboard, also. Simply copy and paste the images to be uploaded to a server.
Blazor File Upload provides a simple interface to delete wrongly uploaded files from a server.
Users can configure previously uploaded files from the server with a success state, which is useful for viewing, removing, and manipulating them.
Users can initiate an automatic upload to upload files immediately upon adding them to the upload queue.
Set corresponding translation texts to the static strings used in the Blazor File Upload component through the localization library.
The Blazor File Upload component supports right-to-left rendering, which improves the user experience and accessibility for those who work with languages like Hebrew, Arabic, or Persian.
The Blazor File Upload component has form support (synchronous mode) to work with native HTML forms.
Fully supports WAI-ARIA accessibility, which allows the Blazor File Upload component to be accessed by on-screen readers and assistive devices.
Follows the WAI-ARIA Best Practices for implementing keyboard interaction.
The UI element visuals, such as foreground color, background color, line spacing, text, and images, were designed based on the WCAG 2.0 standard.
The Blazor File Upload component provides the best user experience across phone, tablet, and desktop form factors.
The Blazor File Upload component has several built-in themes such as Tailwind CSS, Bootstrap 5, Bootstrap 4, Bootstrap, Material, Fabric, and High Contrast. Users can customize any one of these built-in themes or create new themes to achieve their own desired look and feel either by simply overriding SASS variables or using our Theme Studio application.
Developers can control the appearance and behaviors of the Blazor File Upload, including its file list, using a rich set of APIs.
Easily get started with Blazor File Upload using a few simple lines of C# code, as demonstrated below. Also explore our Blazor File Upload Example that shows you how to render the uploader component.
<SfUploader AutoUpload="false">
<UploaderEvents ValueChange="OnChange"></UploaderEvents>
</SfUploader>
@code {
private void OnChange(UploadChangeEventArgs args)
{
foreach (var file in args.Files)
{
var path = @"path" + file.FileInfo.Name;
FileStream filestream = new FileStream(path, FileMode.Create, FileAccess.Write);
file.Stream.WriteTo(filestream);
filestream.Close();
file.Stream.Close();
}
}
}
File Upload is also available in JavaScript, Angular, React and Vue frameworks that are built from their own TypeScript libraries. Check out the different File Upload platforms from the links below,
You can find our Blazor File Upload demo here.
No, this is a commercial product and requires a paid license. However, a free community license is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
A good place to start would be our comprehensive getting started documentation.
Greatness—it’s one thing to say you have it, but it means more when others recognize it. Syncfusion is proud to hold the following industry awards.