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
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Usare il versioning con i controller di ASP.NET Core Web API
Utilizzare il trigger SQL con le Azure Function
Paginare i risultati con QuickGrid in Blazor
Eseguire attività pianificate con Azure Container Jobs
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Utilizzare Model as a Service su Microsoft Azure
Reactive form tipizzati con modellazione del FormBuilder in Angular
Eseguire una query su SQL Azure tramite un workflow di GitHub
Semplificare il deployment di siti statici con Azure Static Web App
Utilizzare Tailwind CSS all'interno di React: primi componenti
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core