在asp.net mvc中上传大文件

在asp.net mvc 页面里上传大文件到服务器端,需要如下步骤:

1. 在Control类里添加get 和 post 方法

 1         // get method
 2         public ActionResult Upload()
 3         {
 4             return View();
 5         }
 6 
 7         // This action handles the form POST and the upload
 8         [HttpPost]
 9         public ActionResult Upload(HttpPostedFileBase file)
10         {
11             // Verify that the user selected a file
12             if (file != null && file.ContentLength > 0)
13             {
14                 // extract only the fielname
15                 var fileName = Path.GetFileName(file.FileName);
16                 // store the file inside ~/App_Data/uploads folder
17                 var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
18                 file.SaveAs(path);
19             }
20             // redirect back to the index action to show the form once again
21             return RedirectToAction("Upload");
22         }

2. 创建view页面,并且添加如下代码:

@using (Html.BeginForm("Upload", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    <input type="file" name="file" />
    <input type="submit" value="OK" />
}

3. 在Web.config里做如下添加和修改:

在<system.web>里添加

<httpRuntime targetFramework="4.5" maxRequestLength="1048576" executionTimeout="3600"/>

并且在<system.webServer>里添加

    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="1073741824" />
      </requestFiltering>
    </security>

大功告成!

转载请注明出处:http://www.cnblogs.com/beiyeqingteng/

posted @ 2015-01-13 00:03  北叶青藤  阅读(385)  评论(0编辑  收藏  举报