MVC文件上传解决

近来陆续了解LINQ, ENTITY, MVC (汗到大家了,现在才开始了解!兄弟落后了!哈哈,原因就不说了) .

朋友让做个上传文件的小程序,就SHOW了一把,方便呀.三下五除二搞定,只是Access用不了LINQ不爽了一把(这种小程序不用讲究什么,LINQ着选呀).

当发布到IIS的时候问题来了,404! 映射出问题. MVC全力支持IIS7,在IIS5,IIS6上就有些小毛病.着实郁闷了一把,解决得靠HACK,手动在IIS中添加到ASP.NET的请求处理,哎,一看就是URL重写时同样的问题,确实不爽了.看来MVC的确是太新,现在服务器IIS7估计不多啊,不过到IIS7普及的时候MVC应该也更上一层楼了.继续关注.

上传时需要做以下修改:

View:

<% using (Html.BeginForm("Create", "Uploads", FormMethod.Post, new { enctype="multipart/form-data" })) {%>           //enctype="multipart/form-data"必须

Controller:

if (Request.Files.Count == 0)
{
     return View();
}
upload.UploadFilePath = string.Format("{0:yyyyMMddHHmmssffff}.rm", DateTime.Now);
var file = Request.Files[0];
if ( file  != null && c.ContentLength > 0)
{
        string savePath = Server.MapPath("~/Uploads/" + upload.UploadFilePath);
        c.SaveAs(savePath);
}

你可能感兴趣的:(文件上传)