@page "/"
@using Telerik.Blazor.Components.FileSelect
@inject IWebHostEnvironment HostingEnvironment
Expected files: JPG, PNG, GIF
@code {
public Dictionary Tokens { get; set; } = new
Dictionary();
private void HandleFiles(FileSelectEventArgs args)
{
foreach (var file in args.Files)
{
if (!file.InvalidExtension)
{
_ = UploadFile(file);
}
}
}
public List AllowedExtensions { get; set; } = new() { ".xlsx" };
private async Task UploadFile(FileSelectFileInfo file)
{
Tokens.Add(file.Id, new CancellationTokenSource());
var path = Path.Combine(HostingEnvironment?.WebRootPath, file.Name);
await using FileStream fs = new FileStream(path, FileMode.Create);
await file.Stream.CopyToAsync(fs, Tokens[file.Id].Token);
}
}