2012-04-06 18 views
5

Estoy cargando un archivo en mi aplicación ASP.NET MVC utilizando Uploadify.Carga de archivo devuelve nulo

controlador:

public ActionResult Upload(HttpPostedFileBase file) 
     {   
      List<string> validIDs, invalidIDs; 
      if (file.ContentLength > 0) 
      { //do something 
      } 
     } 

código Uploadify (en un archivo .ascx):

$(document).ready(function() { 
    $("#file_upload").uploadify({ 
     'uploader': '/Scripts/uploadify/uploadify.swf', 
     'script': '/XYZ/Upload', 
     'cancelImg': '/Scripts/uploadify/cancel.png', 
     'fileExt': '*.jpg;*.gif;*.png;*.bmp;*.htm;*.html;*.zip', 
     'fileDesc': '*.jpg;*.gif;*.png;*.bmp;*.htm;*.html;*.zip', 
     'auto': true, 
     'multi': false, 
     'sizeLimit': 1048576, //1 MB 
     'buttonText': 'Upload Files' 
} 
    }); 
}); 

El 'archivo' en la acción del controlador está volviendo siempre NULL. ¿Qué me estoy perdiendo?

+0

Para ayudar a perfeccionar sus habilidades de depuración: Puede rastrear solicitudes HTTP utilizando Fiddler y mirar debajo del capó de esa manera. – usr

Respuesta

6

Reemplazar:

public ActionResult Upload(HttpPostedFileBase file) 

con:

public ActionResult Upload(HttpPostedFileBase fileData) 

Uploadify utiliza el nombre fileData por defecto. Puede cambiar eso en la configuración si así lo desea: fileDataName: 'file'. Eche un vistazo al following post también.

Cuestiones relacionadas