使用WebMatrix添加带有多个文件上载的下拉列表/选择

时间:2013-02-08 05:58:17

标签: webmatrix-2

我希望有人可以帮助在WebMatrix2中添加一个选择字段。我希望能够在App_data>中添加文件夹。 UploadedFiles> folderA,foldeB等,用folderA,folderB等填充select字段。

我已经按照'使用ASP.NET网页(Razor)站点中的文件'进行操作,但代码确实有效,但它只显示如何将多个文件添加到特定目录(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>

提前谢谢

1 个答案:

答案 0 :(得分: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"]