2012-02-20 8 views
15

necesito implementar en mi proyecto ASP .NET MVC3 la carga de archivos de jQuery plugin:Muestra plugin de jQuery proyecto Carga de archivos Plugin implementado en ASP .NET MVC3

http://blueimp.github.com/jQuery-File-Upload/

que se han de buscar en Google y no he Encontré un proyecto completo, solo fragmentos de código. No sé cómo implementarlo.

¿Alguien me puede ayudar? ¿Puede alguien decirme dónde puedo descargar un proyecto o código de muestra?

+0

Eche un vistazo al componente de carga de Telerik MVC http://demos.telerik.com/aspnet-mvc/upload Está muy bien documentado y, con seguridad, está funcionando. Los controles Telerik MVC son de código abierto. – Azargoth

+0

Muchas gracias. ¡Yo lo comprobare! – rspaz16

Respuesta

46

¿Has leído el documentation del plugin que estás tratando de usar? ¿Has probado el basic plugin functionality? ¿Intentó crear una nueva aplicación ASP.NET MVC 3 en Visual Studio utilizando la plantilla predeterminada?

¿Usted intentó escribir un controlador simple:

public class HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     return View(); 
    } 

    [HttpPost] 
    public ActionResult Index(IEnumerable<HttpPostedFileBase> files) 
    { 
     foreach (var file in files) 
     { 
      var filename = Path.Combine(Server.MapPath("~/App_Data"), file.FileName); 
      file.SaveAs(filename); 
     } 
     return Json(files.Select(x => new { name = x.FileName })); 
    } 
} 

y una vista correspondiente:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/vendor/jquery.ui.widget.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.iframe-transport.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/blueimp/js/jquery.fileupload.js")" type="text/javascript"></script> 

<script type="text/javascript"> 
    $(function() { 
     $('#fileupload').fileupload({ 
      dataType: 'json', 
      url: '@Url.Action("index")', 
      done: function (e, data) { 
       $.each(data.result, function (index, file) { 
        $('<p/>').text(file.name).appendTo(document.body); 
       }); 
      } 
     }); 
    }); 
</script> 

<input id="fileupload" type="file" name="files" multiple="multiple"/> 

Si no es así, te invito a hacerlo.

+0

He leído la documentación, pero hay muchos ejemplos que funcionan de forma diferente. Para esto, necesitaba un claro ejemplo para comenzar. Gracias, @darin – rspaz16

+0

@Darin Dimitrov: no para secuestrar este hilo, pero ¿podría proporcionar alguna orientación sobre un hilo similar, http://bit.ly/HMkiWx en lo que respecta al enrutamiento en la publicación posterior? Cualquier información sería muy apreciada. – JaJ

+3

18.168 respuestas hasta ahora. Debes estar bromeando, quiero decir, debes tener clones de ti mismo haciendo el trabajo pesado ... Estás cerca de Skeet. : D hehehe. Gracias una y otra vez a Darin por la increíble cantidad de ayuda. –