在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/

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。