¿Hay una HTMLHelper
para subir archivos? Específicamente, estoy buscando un reemplazo de
<input type="file"/>
usando ASP.NET MVC HTMLHelper.
O si uso
using (Html.BeginForm())
¿Cuál es el control HTML para la carga de archivos?
asp.net-mvc
razor
file-upload
upload
html-helper
Graviton
fuente
fuente
<input type="file" />
, solo un cuadro de textoTambién puedes usar:
fuente
Tuve esta misma pregunta hace un tiempo y me encontré con una de las publicaciones de Scott Hanselman:
Implementación de carga de archivos HTTP con ASP.NET MVC que incluye pruebas y simulacros
Espero que esto ayude.
fuente
O podrías hacerlo correctamente:
En su clase de extensión HtmlHelper:
Esta línea:
Genera una identificación única para el modelo, ya sabes en listas y otras cosas. modelo [0] .Nombre, etc.
Cree la propiedad correcta en el modelo:
Luego debe asegurarse de que su formulario envíe archivos:
Entonces aquí está tu ayudante:
fuente
Versión mejorada de la respuesta de Paulius Zaliaduonis:
Para que la validación funcione correctamente, tuve que cambiar el Modelo a:
y la vista a:
Esto es necesario porque lo que escribió @Serj Sagan sobre el atributo FileExtension funciona solo con cadenas.
fuente
Para usar
BeginForm
, esta es la forma de usarlo:fuente
Esto también funciona:
Modelo:
Ver:
Acción del controlador:
Lista de tipos de contenido
fuente
Esto es un poco hacky, supongo, pero da como resultado que se apliquen los atributos de validación correctos, etc.
fuente