2013-02-08 111 views
1

我希望有人可以在WebMatrix2增加一个选择栏帮助多文件上传。我希望能够增加内部APP_DATA文件夹> UPLOADEDFILES> folderA,foldeB等与folderA,FolderB中等等填充选择栏。添加下拉/选择使用WebMatrix的

我也跟着代码“在ASP.NET网页(剃刀)现场处理文件”的工作,但它只是展示了如何将多个文件添加到特定的目录(UPLOADEDFILES)。我希望能够根据下拉菜单保存文件。

这里是我到目前为止有:

@using Microsoft.Web.Helpers; 
@{ 
var message = ""; 
if (IsPost) { 
    var fileName = ""; 
    var fileSavePath = ""; 
    int numFiles = Request.Files.Count; 
    int uploadedCount = 0; 
    for(int i =0; i < numFiles; i++) { 
     var uploadedFile = Request.Files[i]; 
     if (uploadedFile.ContentLength > 0) { 
      fileName = Path.GetFileName(uploadedFile.FileName); 
      fileSavePath = Server.MapPath("~/App_Data/UploadedFiles/" +fileName); 
      uploadedFile.SaveAs(fileSavePath); 
      uploadedCount++; 
     } 
    } 
    Response.Redirect("videoList.cshtml"); 
} 
} 
<form method="post" enctype="multipart/form-data" action=""> 
    <div> 
<h1>File Upload - Multiple-File Example</h1> 
    @if (!IsPost) { 
    @FileUpload.GetHtml(
     initialNumberOfFiles:2, 
     allowMoreFilesToBeAdded:false, 
     includeFormTag:false, 
     addText:"Add another file", 
     uploadText:"Upload") 
    } 
    </div> 
    <input type="submit" value="Upload" />  
    </form> 

预先感谢您

回答

0

大概要提供每个文件上传下拉?如果是这样,我建议不要使用FileUpload助手。只需使用基本的HTML:

<form method="post" action="" enctype="multipart/form-data"> 
<input type="file" name="file1" /> 
<select name="folder1"> 
    <option>FolderA</option> 
    <option>FolderB</option> 
</select> 
<br /> 
<input type="file" name="file2" /> 
<select name="folder2"> 
    <option>FolderA</option> 
    <option>FolderB</option> 
</select> 
<input type="submit /> 
</form> 

的第一个文件将在Request.Files["file1"]和相应的下拉选择与在Request["folder1"]

+0

感谢迈克 - 我会记住这一点。我最终使用FileUpload助手完成了它。我希望dropdwon可以动态地将任何文件夹添加到目录中。但是,如果我需要提供每次上传的下拉菜单,我一定会使用您的解决方案。 – NickP