MVC3:如何使用或不使用uploadify上传多个文件

时间:2012-08-09 16:28:41

标签: jquery asp.net-mvc-3 file-upload uploadify

我花了好几个小时试图让uploadify工作,但我看到的只是一个按钮,显示[选择文件],但什么也没做。找到了一些像Multiple file upload in MVC using UploadifyUsing uploadify with ASP.Net2这样的链接。并且来自uploadify.com的信息也不起作用。所以我陷入了uploadify。

我也注意到大多数信息至少有一年的历史。现在我想知道这是不是要走的路,或者你能推荐一个更好的方法吗?目前我正在查看File upload asp.net mvc3看起来非常简单,但只允许您一次上传1个文件...

亲切的问候,

保罗。

1 个答案:

答案 0 :(得分:4)

一种方法是:

根据Phil Haack的说法http://haacked.com/archive/2010/07/16/uploading-files-with-aspnetmvc.aspx

你可以这样做:

<form action="" method="post" enctype="multipart/form-data">

 <label for="file1">Filename:</label>
 <input type="file" name="files" id="file1" />

 <label for="file2">Filename:</label>
 <input type="file" name="files" id="file2" />

 <input type="submit"  />
 </form>

和控制器..

[HttpPost]
public ActionResult Index(IEnumerable<HttpPostedFileBase> files) {
 foreach (var file in files) {
 if (file.ContentLength > 0) {
   var fileName = Path.GetFileName(file.FileName);
   var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
   file.SaveAs(path);
 }
}
return RedirectToAction("Index");
}

第二种方法:

使用KendoUI上传。它允许同步和异步上传多个文件。

上传可以用作文件输入元素的替代品。

http://demos.kendoui.com/web/upload/index.html

澄清:没有任何版本的IE支持多个文件选择。