Problema
Voglio restituire un file nel mio controller API Web ASP.Net, ma tutti i miei approcci restituiscono HttpResponseMessage
come JSON.
Codice finora
public async Task<HttpResponseMessage> DownloadAsync(string id)
{
var response = new HttpResponseMessage(HttpStatusCode.OK);
response.Content = new StreamContent({{__insert_stream_here__}});
response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
return response;
}
Quando chiamo questo endpoint nel mio browser, l'API Web restituisce HttpResponseMessage
come JSON con l'intestazione del contenuto HTTP impostata su application/json
.
return File(stream, "application/octet-stream", "filename.xlsx");
questo modo quando scarica l'utente può aprirlo direttamente.