1.首先创建一控制器文件UpFileController.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace Mvc4Study.Controllers{
public class UpFileController : Controller
{
//
// GET: /UpFile/
public ActionResult Index()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult UpFile()
{
//项目根目录文件夹 Files
string fileDir = Server.MapPath("~/Files/") + DateTime.Now.ToString("yyyy/MM/dd/");//根据上传的年月日创建目录
if (!System.IO.Directory.Exists(fileDir))//判断目录是否存在,不存在就创建。
{
System.IO.Directory.CreateDirectory(fileDir);
}
HttpPostedFileBase httpFile = Request.Files["imgfile"];//获取上传文件信息
httpFile.SaveAs(fileDir + httpFile.FileName);//保存文件
return JavaScript("alert('OK');");
}
}
}
2.在view层的页面Index.cshtml中添加如下代码:
@{
ViewBag.Title = "文件上传";
}
<h2>文件上传</h2>
@using (Html.BeginForm("UpFile", "UpFile", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
<p>
选择文件上传:
<input type="file" name="imgfile" />
<input type="submit" value="提交" />
</p>
}
就这样完成了。