Nello script #619 abbiamo sottolineato che le librerie per creare un client FTP in .NET sono state deprecate a partire dalla versione 6 e che Microsoft non le rimpiazzerà con nuove versioni moderne. Per sostituire le librerie obsolete, abbiamo introdotto la libreria FluentFTP e mostrato come installarla e connettersi a un server per effettuare l'upload di un file.
In questo script riprendiamo il tema mostrando come effettuare il download di un file. Dopo aver fatto i passi propedeutici come l'installazione del package e la connessione, visti nello script #619, possiamo invocare il metodo DownloadFileAsync passando in input il percorso in cui salvare il file in locale e il percorso del file sul server. Sono supportati anche altri parametri opzionali come il comportamento da tenere in caso il file in locale già esista, se effettuare la verifica del checksum del file scaricato e un callback da invocare quando cambia lo stato di avanzamento del download.
using var client = new FtpClient("1.1.1.1", "username", "pwd");
await client.AutoConnectAsync();
await client.DowloadFileAsync(@"C:\MyFile.txt", "/myfolder/myfile.txt");Oltre a usare DownloadFileAsync per scaricare il file sul disco, possiamo usare i metodi DownloadStreamAsync e DownloadByteArrayAsync per scaricare il file rispettivamente in uno stream e in un byte array.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Importare repository da Bitbucket a GitHub Enterprise Cloud
Creare agenti facilmente con Azure AI Agent Service
Ospitare n8n su Azure App Service
Implementare il throttle in JavaScript
Ridurre il reflow ottimizzando il CSS
Utilizzare i variable font nel CSS
Introduzione alle Container Queries
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
.NET Aspire per applicazioni distribuite
Utilizzare Container Queries nominali
Analizzare il contenuto di una issue con GitHub Models e AI
Collegare applicazioni server e client con .NET Aspire
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Gli oggetti CallOut di Expression Blend 4.0
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Sfruttare una CDN con i bundle di ASP.NET
- Le DirectInk API nella Universal Windows Platform
- Inserire le news di Punto Informatico nel proprio sito


