Il controllo FileUpload di ASP.NET Web Forms, dalla versione 4.5, consente la selezione e l'invio di più file contemporaneamente, nel caso in cui questa funzionalità sia supportata dal browser.
Per attivare questa modalità, è sufficiente impostare a true la proprietà AllowMultiple:
<asp:FileUpload runat="server" AllowMultiple="true" ID="fileUpload" /> <asp:Button runat="server" ID="btnSend" Text="Invia" OnClick="btnSend_Click" />
A questo punto, lato server sarà sufficiente accedere alle nuove proprietà HasFiles e PostedFiles, per recuperare i riferimenti ai file contenuti nella richiesta HTTP.
protected void btnSend_Click(object sender, EventArgs e) { if (fileUpload.HasFiles) { foreach (var file in fileUpload.PostedFiles) { // ... elaborazione del file ... } } }
Questo codice funziona anche nel caso in cui la funzionalità di upload multiplo non sia supportata dal browser. In questo caso, ovviamente, la collection PostedFiles conterrà sempre un solo elemento. Per mantenere la compatibilità con il codice precedente alla versione 4.5, sono state mantenute anche le proprietà HasFile e PostedFile; quest'ultima, in particolare, fa riferimento sempre al primo file selezionato dall'utente.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Usare le collection expression per inizializzare una lista di oggetti in C#
Inizializzare i container in Azure Container Apps
Creazione di componenti personalizzati in React.js con Tailwind CSS
Creare form tipizzati con Angular
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Load test di ASP.NET Core con k6
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Eseguire attività con Azure Container Jobs
Sfruttare lo streaming di una chiamata Http da Blazor
Definire stili a livello di libreria in Angular
I più letti di oggi
- Utilizzare Docker Compose con Azure App Service
- Utilizzare QuickGrid di Blazor con Entity Framework
- Modernizzare le applicazioni WPF e Windows Forms con Blazor
- ASP 3 per esempi
- annunciato #netstandard 2.1. .NET Core lo supporterà a partire da #netcore3, così come le prossime versione di #xamarin, #mono e #unity.il supporto per #netfx 4.8, invece, non ci sarà. https://aspit.co/bq2