2010-12-02 11 views
6

Así que estoy usando MVC para mostrar algunas imágenes de una acción de controlador. La sabiduría general (1, 2, 3) parece ser utilizar uno de los tipos FileResult (FileStreamResult, FileContentResult o `FileContentResult ').¿Cómo devolver la imagen desde el controlador sin configurar la etiqueta Content-Disposition?

Todos los tres concretos FileResult, sin embargo, establecieron el encabezado de respuesta Content-Disposition con attachment; filename{YourFileNameHere}=UTF-8. El resultado neto es que si un usuario ve mi imagen directamente, en lugar de incrustado en HTML, el navegador presenta un cuadro de diálogo para guardar, en lugar de mostrar la imagen. Preferiría que la imagen simplemente se muestre en el navegador.

Supongo que hace mi pregunta: ¿Cómo usar MVC 2? ¿Cuál es la forma adecuada de devolver un resultado de imagen donde la imagen es NO marcado para descargar?

Respuesta

5

La estructura MVC utiliza la propiedad FileResult.FileDownloadName para determinar si se debe enviar el contenido en línea o como un archivo adjunto. Si está instanciando un tipo derivado de FileResult directamente, no configure su propiedad FileDownloadName. Alternativamente, si está utilizando los métodos de fábrica Controller.File, llame a una sobrecarga que no tome un argumento fileDownloadName (o pase nulo para ese argumento).

+0

Eché de menos eso ... gracias por la información. – EBarr

Cuestiones relacionadas