在这里我们用到的是 HttpFileCollection类
HTML中代码:
<form action="/Home/Save" method="post" enctype="multipart/form-data"> <!--method必须为post enctype必须设置为multipart/form-data否则后台的HttpFileCollection的Count属性为0--> <input type="file" name="ImageFile" /> <input type="submit" value="上传" /> </form>
后台Home控制器中Save方法代码:
public ActionResult Save() { HttpRequest request = System.Web.HttpContext.Current.Request; HttpFileCollection FileCollect = request.Files; if (FileCollect.Count > 0) //如果集合的数量大于0 { foreach (string str in FileCollect) { HttpPostedFile FileSave = FileCollect[str]; //用key获取单个文件对象HttpPostedFile string imgName = DateTime.Now.ToString("yyyyMMddhhmmss"); string imgPath = "/" + imgName + FileSave.FileName; //通过此对象获取文件名 string AbsolutePath = Server.MapPath(imgPath); FileSave.SaveAs(AbsolutePath); //将上传的东西保存 Response.Write("<img src='" + imgPath + "'/>"); } } return Content("键值对数目:" + FileCollect.Count); }