IEnumerable <httppostedfilebase>为每个文件执行操作</httppostedfilebase>

时间:2013-11-07 15:20:20

标签: c# .net asp.net-mvc file-upload telerik

我需要在单个zip文件中添加多个文件,然后上传包含该集合的所有项目的单个文件。所以这是我的观看代码:

 @Html.Telerik().Upload().Name("attachments").ShowFileList(true).Async(a =>
 { 
   a.Save("AddDocumentToZipFile", "Client");      
   a.Remove("Remove", "Client");
 }).Multiple(true))

我的行动:

public ActionResult AddDocumentToZipFile(IEnumerable<HttpPostedFileBase> attachments)
    {
        AddFile(attachments.ToList());
        return Content("");
    }

 public void AddFile(List<HttpPostedFileBase> attachments)
    {
        var fileName = Guid.NewGuid().ToString();    
        var zipFile = new ZipFile(fileName);
        foreach (var image in attachments)
        {
            zipFile.AddFile(image.FileName, string.Empty);
        }
    }

但是当我调试并选择多个文件时,即使我把IENumerable作为参数,也会为每个文件执行Action,然后AddFile方法为每个文件创建一个zipfile。

如何解决这个问题? 感谢。

0 个答案:

没有答案