有没有很好的例子来说明如何在asp.net mvc中上传多个图像文件?我知道我们可以用HttpPostedFileBase上传一个文件。有没有办法通过点击一个按钮来上传多个文件?
我以前在webform的ajaxtoolbox中使用过文件上传,我喜欢它的工作方式。在MVC中有没有类似的方式?或者,有没有一个现有的控件可以很好地做到这一点?免费控制更好,但即使要花费一些$也没问题。
谢谢
发布于 2014-09-11 02:55:30
只需包含插件js文件,创建标签:
<input type='file' multiple id='fileUpload' name="files[]" data-url="@Url.Action("Upload","Home")" />
(除了IE9,它不允许在选择对话框中选择多个文件)
添加一些JavaScript:
$(function () {
$('#fileUpload').fileupload({
dataType: 'json',
done: function (e, data) {
$.each(data.result.files, function (index, file) {
$('<p/>').text(file.name).appendTo(document.body);
});
}
});
});
在控制器操作中,只需检查Request.Files,然后做您想做的任何事情。这是一个很好的documentation
[HttpPost]
public JsonResult Upload()
{
foreach (var file in Request.Files)
{
if(file.ContentLength > 0)
{
file.SaveAs(Server.MapPath("~/Upload/" + file.FileName));
}
}
return Json(new { result = true });
}
发布于 2014-09-11 06:17:55
我用的是这个。https://www.fyneworks.com/jquery/multiple-file-upload/
<input type="file" name="file" class="multiple" />
[HttpPost]
public ActionResult Upload()
{
if (Request.Files.Count > 0)
{
foreach(var file in Request.Files) { }
}
return View();
}
https://stackoverflow.com/questions/25772134
复制相似问题