MVC中如何上传文件-创新互联

本文导读:在MVC中实现文件上传与传统的WebForm上传文件方法都差不多,在cshtml视图页面放一个file标签,然后在actionname方法中处理用户上传的文件。下面简单介绍MVC中上传文件的方法。

创新互联公司专注于企业成都营销网站建设、网站重做改版、乌当网站定制设计、自适应品牌网站建设、H5技术商城网站定制开发、集团公司官网建设、外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为乌当等各大城市提供网站开发制作服务。

一、MVC中如何上传文件

1、在Web Forms中,当你把一个FileUpload控件拖到设计器中,你或许没有注意到在生成的HTML中会在form标签中加入一条额外属性 enctype="multipart/form-data". 而FileUpload控件本身会生成为<input type=”file” />,在MVC的view里,下列HTML可以做到同样效果

HTML 代码   复制

<form action="/" method="post" enctype="multipart/form-data">  <input type="file" name="FileUpload1" /><br />  <input type="submit" name="Submit" id="Submit" value="Upload" /></form>

注意form标签已经包括了enctype标签,而method属性则设为”post”,这样设置并不多于因为默认的提交时通过HTTP get方式进行

2、在Asp.net MVC中Controller类中,Request对象作为HttpRequestBase类型的一个属性存在。HttpReuqestBase其实是 HTTP请求的一个封装,暴漏了很多属性,包括Files collection(其实是HttpFileCollectionBase的集合),在集合中的每一个元素都是HttpPostedFileBase的 集合,扩展方法是用于确保上传的文件是否存在。实际上,这和FileUpload.HasFile()方法的工作原理一致。

二、MVC上传文件的实例:

1、视图文件

前台引擎采用Razor

上传页View:

C# 代码   复制

@model System.Web.HttpContextBase@{    ViewBag.Title = "上传文件";}<h3>上传文件</h3><br /><br />@*new { enctype = "multipart/form-data" }比不可少,否则上传文件不会成功 *@ @using (Html.BeginForm("Upload", "UploadFile", FormMethod.Post, new { enctype = "multipart/form-data" })){    <text>选择上传文件:</text><input name="file" type="file" id="file" />    <br />    <br />    <input type="submit" name="Upload" value="Upload" />}

2、后台UploadFileController

C# 代码   复制

      [HttpPost]      public ActionResult Upload(FormCollection form)      {            if (Request.Files.Count == 0)            {          //Request.Files.Count 文件数为0上传不成功          Return View();          }            var file = Request.Files[0];            if (file.ContentLength == 0)            {               //文件大小大(以字节为单位)为0时,做一些操作           Return View();          }          else          {           //文件大小不为0           HttpPostedFileBase file = Request.Files[0];          //保存成自己的文件全路径,newfile就是你上传后保存的文件,          //服务器上的UpLoadFile文件夹必须有读写权限                 file.SaveAs(Server.MapPath(@"UploadFile\\newfile"));          }          newFile = DateTime.Now.ToString("yyyyMMddHHmmss") + ".sl";                        return View();       }

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

网页题目:MVC中如何上传文件-创新互联
文章分享:https://www.cdcxhl.com/article8/dodgop.html

成都网站建设公司_创新互联,为您提供网站策划ChatGPT微信小程序全网营销推广网站设计公司App设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都定制网站建设