Usuario
Enviar un Archivo (Image, Doc, Zip) a travez de un ajax post en MVC

Pregunta
-
Hola, buenas noches,
Disculpen la molestia quisiera pedir su ayuda ya que me surgio un problema:
1. Intento enviar un archivo que es recuperado en un input tipo file y enviarlo a un metodo del controller, pero atravez de ajax js, no he encontrado una solucion a esto, mi metodo recibe lo siguiente:
public JsonResult GuardarEvidencia(ClasesAux.AuxFile file)
{}
public class AuxFile { public string archivo { get; set; } public byte[] Documento { get; set; } public string extension { get; set; } public string observaciones { get; set; } }
2. a mi lo que me interesa recibir es archivo, pero como se daran cuenta la pripiedad Documento la recibe pero es un array de bites
3. Yo lleno un objeto en js, para enviarlo al controller y el controller lo guarde en base de datos como un varbinary
var evidencia = { observaciones: observacion, extension: extension, archivo: filename, Documento: fdata, }
$.ajax({ type: "POST", url: 'GuardarEvidencia', contentType: "application/json;charset=utf-8", dataType: "json", data: "{file:" + JSON.stringify(evidencia) +"}", async: false, success: function (response) { $('#modal-ConfAgregado').modal("show"); LimpiaControles(); ReiniciarTabla(); ObtenerTodosLosDatos(); //$("#ModalEvidencia").modal("hide"); }, error: function (ex) { $('#modal-Error').modal("show"); } });
4. Mi problema es que no se como convertir ese archivo que capturo en el input y enviarlo al controlador, porque cuando lo recibe esta en null
he intenado el siguiente codigo al cargar el archivo, pero no me resulta
$('input[type=file]').change(function (event) { debugger; event.preventDefault(); })
<div class="form-group"> <input id="file-1" type="file" multiple class="file" data-overwrite-initial="false" data-show-upload="false" multiple=true data-min-file-count="1"> <span id="msgValidar" class="error" style="display:none;color:red">*No se ha Subido Ningun Archivo</span> </div>
Si alguien puede ayudarme atraves de esta forma, se los agradeceria mucho
Todas las respuestas
-
¿Cómo obtienes el contenido de la variable fdata en JavaScript?
Aquí tienes un ejemplo de cómo hacerlo:
Upload files in ASP.NET MVC with JavaScript and C#.
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Propuesto como respuesta Sergio ParraModerator lunes, 7 de diciembre de 2015 16:57
-
Hola
Tambien podrias usar el siguiente componente de jquery