亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#實現文件上傳以及多文件上傳功能

2019-10-29 21:10:50
字體:
來源:轉載
供稿:網友

一、前端搭建

1、前端用到js:uploadify(下載地址:http://www.uploadify.com/download/)、layer (下載地址:http://layer.layui.com/),下載之后把它們放在你的項目里 列如

 

2、根據你的需要在你項目適當的位置建立上傳文件的目錄  列如(File)

 

 到此前端搭建結束

二、配置文件修改(可選擇跳過此步驟)

1、首先說明下,這個步驟可以跳過,此步驟主要是修改上傳文件大小的限制(.net 默認最大只能上傳4M)如若需要修改請繼續閱讀該步驟。

2、打開web.config 配置文件 找到<system.web> 節點 ,在該節點下面添加如下節點

<httpRuntime targetFramework="4.5"  executionTimeout="500" maxRequestLength="409600" useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100" /><!-- maxRequestLength屬性是上傳文件大小的設置 值是kb大小 maxRequestLength=“1024” 為最大上傳1M -->

三、代碼編寫

1、說明下:我用的是mvc模式 所以這里就用mvc的方式編寫 (代碼是不變的,開發者可以根據你們的設計模式編寫)

2、建立一個控制器PageBaseController在該控制器里編寫如下代碼?。ㄈ绻怯玫腶spx頁面那么把FileUpdateView方法刪掉  ,把UploadifyFile 方法的ActionResult改成void  并去掉return null;) 

后端代碼如下

/// <summary>    /// 文件上傳頁面    /// </summary>    /// <returns></returns>    public ActionResult FileUpdateView()    {      return View();    }    /// <summary>    /// 文件處理方法    /// </summary>    /// <param name="filedata"></param>    /// <returns></returns>    public ActionResult UploadifyFile(HttpPostedFileBase filedata)    {      if (filedata == null ||        String.IsNullOrEmpty(filedata.FileName) ||        filedata.ContentLength == 0)      {        return HttpNotFound();      }      string filename = System.IO.Path.GetFileName(filedata.FileName);      string virtualPath = String.Format("~/File/{0}", filename);      string path = Server.MapPath(virtualPath);      // 以下注釋的代碼 都可以獲得文件屬性      // System.Diagnostics.FileVersionInfo info = System.Diagnostics.FileVersionInfo.GetVersionInfo(path);      // FileInfo file = new FileInfo(filedata.FileName);      filedata.SaveAs(path);      return null;    } 

注:virtualPath 是我們搭建上傳文件的目錄

3、在視圖(頁面)里引用我們搭建的js:uploadfiy 、layer 路徑

 列如:      

<script src="~/Scripts/jquery-1.10.2.js"></script><script src="~/Scripts/lib/layer/layer.js"></script><link href="~/Scripts/lib/uploadify/uploadify.css" rel="external nofollow" rel="stylesheet" /><script src="~/Scripts/jquery-1.10.2.min.js"></script><script src="~/Scripts/lib/uploadify/jquery.uploadify.min.js"></script>

注:這里我們用到了jquery

4、前端代碼

<script type="text/javascript">  var uploadifyOnSelectError;  var uploadifyOnUploadError;  var uploadifyOnSelect;  var uploadifyOnUploadSuccess;  uploadifyOnSelectError = function (file, errorCode, errorMsg) {    var msgText = "上傳失敗/n";    switch (errorCode) {      case SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED:        //this.queueData.errorMsg = "每次最多上傳 " + this.settings.queueSizeLimit + "個文件";        msgText += "每次最多上傳 " + this.settings.queueSizeLimit + "個文件";        break;      case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:        msgText += "文件大小超過限制( " + this.settings.fileSizeLimit + " )";        break;      case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:        msgText += "文件大小為0";        break;      case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:        msgText += "文件格式不正確,僅限 " + this.settings.fileTypeExts;        break;      default:        msgText += "錯誤代碼:" + errorCode + "/n" + errorMsg;    }    layer.msg(msgText);  };  uploadifyOnUploadError = function (file, errorCode, errorMsg, errorString) {    // 手工取消不彈出提示    if (errorCode == SWFUpload.UPLOAD_ERROR.FILE_CANCELLED      || errorCode == SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED) {      return;    }    var msgText = "上傳失敗/n";    switch (errorCode) {      case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:        msgText += "HTTP 錯誤/n" + errorMsg;        break;      case SWFUpload.UPLOAD_ERROR.MISSING_UPLOAD_URL:        msgText += "上傳文件丟失,請重新上傳";        break;      case SWFUpload.UPLOAD_ERROR.IO_ERROR:        msgText += "IO錯誤";        break;      case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:        msgText += "安全性錯誤/n" + errorMsg;        break;      case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:        msgText += "每次最多上傳 " + this.settings.uploadLimit + "個";        break;      case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:        msgText += errorMsg;        break;      case SWFUpload.UPLOAD_ERROR.SPECIFIED_FILE_ID_NOT_FOUND:        msgText += "找不到指定文件,請重新操作";        break;      case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:        msgText += "參數錯誤";        break;      default:        msgText += "文件:" + file.name + "/n錯誤碼:" + errorCode + "/n"          + errorMsg + "/n" + errorString;    }    layer.msg(msgText);  };  uploadifyOnSelect = function () {  };  uploadifyOnUploadSuccess = function (file, data, response) {    layer.msg(file.name + "/n/n" + response + "/n/n" + data);  };  $(function () {    $("#uploadify").uploadify({      uploader: '/PageBase/UploadifyFun', //處理上傳的方法      swf: '/Scripts/lib/uploadify/uploadify.swf',      width: 80, // 按鈕寬度      height: 60, //按鈕高度      buttonText: "上傳文件",      buttonCursor: 'hand',      fileSizeLimit:20480,      fileobjName: 'Filedata',      fileTypeExts: '*.xlsx;*.docx', //擴展名      fileTypeDesc: "請選擇xslx,docx文件", //文件說明      auto: false, //是否自動上傳      multi: true, //是否一次可以選中多個文件      queueSizeLimit: 5, //允許同時上傳文件的個數      overrideEvents: ['onSelectError', 'onDialogClose'], // 是否要默認提示 要就不配置      onSelect: uploadifyOnSelect,      onSelectError: uploadifyOnSelectError,      onUploadError: uploadifyOnUploadError,      onUploadSuccess: uploadifyOnUploadSuccess    });  });</script><span id="uploadify"></span><div>  <a href="javascript:$('#uploadify').uploadify('upload','*');">上傳</a>  <a href="javascript:$('#uploadify').uploadify('cancel', '*');">取消</a></div> 

注:fileSizeLimit 屬性的值最好和我們web.config 里設置的文件上傳最大值一樣(不能大于這個值)

到這里。我們文件上傳就結束了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品成人乱色一区二区| 欧美大片免费看| 国产精品91在线观看| 日韩av在线免费| 欧美成人激情视频免费观看| 97视频在线免费观看| 亚洲高清不卡av| 91精品国产91久久久久久吃药| 国产91热爆ts人妖在线| 疯狂蹂躏欧美一区二区精品| 精品视频在线播放| 日韩av在线免费看| 亚洲精品av在线| 成人午夜在线影院| 亚洲黄色av网站| 日韩视频在线免费观看| 国产亚洲精品综合一区91| 亚洲成人激情在线观看| 精品在线观看国产| 欧美激情乱人伦| 成人久久精品视频| 国产精品电影网站| 国产小视频国产精品| 国产不卡在线观看| 日韩精品在线私人| 国产色婷婷国产综合在线理论片a| 欧美极品第一页| 亚洲精品日韩久久久| 国产午夜精品理论片a级探花| 欧美国产视频一区二区| 国产精品视频网站| 亚洲色图综合网| 45www国产精品网站| 国产精品美女午夜av| 中文.日本.精品| 久久青草精品视频免费观看| 91久久精品在线| 亚洲精品美女在线观看| 8090成年在线看片午夜| 亚洲一区二区三区在线免费观看| 中文字幕日本欧美| 欧美亚洲视频在线看网址| 国产精品999| 久久视频在线视频| 亚洲色图欧美制服丝袜另类第一页| 欧美激情在线视频二区| 欧洲成人性视频| 久久久精品999| 日韩电影中文 亚洲精品乱码| 日韩电影免费在线观看中文字幕| 97激碰免费视频| 成人性生交大片免费观看嘿嘿视频| 欧美性极品xxxx做受| 韩日精品中文字幕| 欧美视频免费在线| 亚洲天堂色网站| 亚洲欧洲免费视频| 51精品在线观看| 欧美国产精品va在线观看| 亚洲欧洲第一视频| 国产第一区电影| 日韩少妇与小伙激情| 久久视频精品在线| 久久久久久久999精品视频| 国产日韩精品在线| 欧美性高跟鞋xxxxhd| 国产98色在线| 亚洲激情视频在线| 91wwwcom在线观看| 久久精品国产96久久久香蕉| 欧美日韩一区二区免费视频| 国产精品igao视频| 伦理中文字幕亚洲| 亚洲人精品午夜在线观看| 国产成人精品一区二区三区| 色播久久人人爽人人爽人人片视av| 色综合影院在线| 欧美精品一区三区| 日韩欧美精品网站| 青青久久av北条麻妃黑人| 日韩精品视频在线观看网址| 国产成人精彩在线视频九色| 久久69精品久久久久久久电影好| 国产免费一区二区三区在线能观看| 久久亚洲综合国产精品99麻豆精品福利| 美女啪啪无遮挡免费久久网站| 成人黄色午夜影院| 国产精品美女久久久久久免费| 91在线视频九色| 久久久久日韩精品久久久男男| 欧美日韩在线视频首页| 九九热最新视频//这里只有精品| 日韩暖暖在线视频| 日韩精品久久久久久久玫瑰园| 亚洲黄色有码视频| 色妞久久福利网| 国产精品自拍视频| 国产精品成人一区二区| 欧美日韩精品在线| 国产成人极品视频| 俺也去精品视频在线观看| 国产丝袜高跟一区| 国产成人免费av| 亚洲成人激情视频| 亚洲bt天天射| 狠狠躁天天躁日日躁欧美| 亚洲欧美中文日韩在线| 97在线观看视频国产| 日本中文字幕久久看| 91po在线观看91精品国产性色| 国产欧美va欧美va香蕉在线| 92国产精品视频| 亚洲精品国产精品国自产观看浪潮| 欧美国产日韩一区二区三区| 精品国产91久久久久久老师| 久久久日本电影| 清纯唯美亚洲综合| 欧美日韩午夜视频在线观看| 日韩在线观看成人| 久热精品视频在线免费观看| 欧美视频国产精品| 亚洲国产成人久久| 久久久久久久成人| 国产视频久久久| 国产一区香蕉久久| 日韩av一区二区在线| 国产美女精彩久久| 久久久久女教师免费一区| 国产精品爽爽爽| 国产精品劲爆视频| 日韩一区视频在线| 日韩av中文字幕在线| 亚洲第一页中文字幕| 日韩欧美视频一区二区三区| 精品露脸国产偷人在视频| 精品无码久久久久久国产| 国产一区二区三区日韩欧美| 亚洲一区二区三区视频播放| 日韩av在线网页| 色综合五月天导航| 精品视频偷偷看在线观看| 成人免费网站在线观看| 欧美电影免费观看电视剧大全| 国产精品伦子伦免费视频| 欧美色视频日本高清在线观看| 国产日韩在线一区| 日韩欧美中文字幕在线播放| 九九九久久久久久| 日韩美女福利视频| 国产一区红桃视频| 国产精品成人在线| 海角国产乱辈乱精品视频| 亚洲精品wwwww| 亚洲自拍中文字幕| 欧美另类精品xxxx孕妇| 国产精品成熟老女人| 日韩av不卡电影| 亚洲乱码国产乱码精品精天堂| 久久91精品国产91久久跳| 91美女片黄在线观看游戏| 性夜试看影院91社区| 精品国产自在精品国产浪潮| 欧美洲成人男女午夜视频| 国产精品免费久久久|