使用jQuery Submit Method上传文件

时间:2013-06-01 17:17:03

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

我有一个包含多个Form元素的Html FileUpload,我想用jQuery submit方法提交它,问题是表单提交时它不会发送Files 1}}我要上传。我不知道问题是什么,我应该如何解决。以下代码显示了我的代码:

@using (Html.BeginForm("Create", "Personel", new { @enctype = "multipart/form-data" }))
{
   <input type="file" id="personelPhoto" name="personelPhoto" />
}

if (form["personelPhoto"] != null)
{
   // Request's files count is 0 
}

任何建议都会有所帮助。

1 个答案:

答案 0 :(得分:0)

如果您使用通用表单提交并将以下作为后端c#(4.0)代码,则应该可以使用

 if (Request.Files.Count > 0)
{

  for (int i = 0; i < Request.Files.Count; i++)
  {
    HttpPostedFileBase hpfTest = Request.Files[i] as HttpPostedFileBase;
    if (hpfTest.ContentLength == 0)
        continue;
    string savedFileName = Path.Combine(Server.MapPath("~") + "\\Files\\",Request.Form["name"]);    
    hpfTest.SaveAs(savedFileName);  
  }
}

或者您可以在其他版本的.net

中使用“HttpFileCollection”
HttpFileCollection files = Context.Request.Files;
files[0].SaveAs();