Negli ultimi script abbiamo introdotto gli automatismi resi possibili dal nuovo attributo ApiController in ASP.NET Core 2.1 per quanto riguarda la dell'input e il binding dei parametri con le varie componenti della request Web API.
Un'ulteriore automatismo è presente in caso di upload di file. Non dobbiamo far altro che creare un'action con un parametro di tipo IFormFile oppure, in caso di file multipli, di tipo IEnumerable
[HttpPost, Route("image")] public ActionResult<UploadResultDto> UploadProductImage(IFormFile image) { //... }
Il client potrà inviare uno o più file per mezzo di una richiesta HTTP con Content-Type: multipart/form-data. In questo caso l'attributo ApiController appone automaticamente l'attributo Consumes("multipart/form-data") sull'action per imporre l'utilizzo di quel content type. Se intendiamo rinunciare a questa funzionalità, agiamo ancora una volta sulle opzioni.
services.Configure<ApiBehaviorOptions>(options => { options.SuppressConsumesConstraintForFormFileParameters = true; });
Grazie alle convenzioni che abbiamo visto, riduciamo la quantità di codice ripetitivo, che si traduce in maggiore leggibilità e maggiore rapidità nello sviluppo della nostra applicazione.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Creare una libreria CSS universale: Clip-path
Ottimizzazione dei block template in Angular 17
Code scanning e advanced security con Azure DevOps
Utilizzare il nuovo modello GPT-4o con Azure OpenAI
Ottenere un token di accesso per una GitHub App
Creare un'applicazione React e configurare Tailwind CSS
Limitare le richieste lato server con l'interactive routing di Blazor 8
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Gestire i dati con Azure Cosmos DB Data Explorer
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API
I più letti di oggi
- Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
- Accedere con ASP.NET ad un documento XML creato dall'oggetto recordset di ADO e ASP
- Richiamare programmaticamente le operazioni di aggiornamento, eliminazione e inserimento di FormView, DetailsView e GridView
- Ricavare lo spazio occupato su disco dal nostro sito
- Realizzare siti sicuri con ASP.NET Web Pages