zoukankan      html  css  js  c++  java
  • MVC上传文件

    1、首先需要定义页面标签

    <form id="fileUploadForm" method="post" enctype="multipart/form-data">
    
    </form>

    2、定义JQuery方法

    function file_onChange(srcElement) {
     $("#fileUploadForm").ajaxSubmit({
      type: 'post',
      url: "/require/UpLoadFiless",
      data: { Upload_req00_no: $("#Upload_req00_no").val() },
      success: function (result) {
        //上传完成后的操作
       if (result != "") {
        result = eval("(" + result + ")");
        var filenamestr = result.fileName + "." + result.fileExtension;
        var obj = $("#div_upload_info", parent.document)
        $(obj).append("<span class='tagstyle'><input  type='hidden' name='fileExtension' value=" + result.fileExtension + "><input  type='hidden' name='fileName' value=" + result.fileName + "><input  type='hidden' name='fileSize' value=" + result.fileSize + "><a href='#' onclick='DownloadFiles(this,"" + filenamestr + "","" + $("#Upload_req00_no").val() + "")'>" + result.fileName + "." + result.fileExtension + "</a><a class='ico-href' href='#'><i class='icon-remove' onclick=removeTag(this)></i></a></span>");
       }
      },
      error: function (XmlHttpRequest, textStatus, errorThrown) {
       alert("error");
      }
     });

    3、控制器中的操作

    HttpPostedFileBase uploadFile = Request.Files["file"];
    if (Request.Files.Count > 0)
        {
         if (uploadFile != null)
         {
          byte[] lByteArray;
          MemoryStream lMemoryStream = new MemoryStream();
       //将文件流拷贝到内存流中 uploadFile.InputStream.CopyTo(lMemoryStream); lByteArray
    = lMemoryStream.ToArray(); path = string.Empty; path = Upload_req00_no;
       //获取文件后缀 fileExtension
    = uploadFile.FileName.Substring(uploadFile.FileName.LastIndexOf('.') + 1);
       //获取文件名称 fileName
    = uploadFile.FileName.Substring(0, uploadFile.FileName.LastIndexOf('.')); UpLoadFileModel fModel = new UpLoadFileModel();
        //文件大小 fileSize
    = uploadFile.ContentLength;
        //自定义的API服务来保存文件
    base.ExecAPIService(EnumAppSettingAPIKey.APIMELMRPAttachFileUploadEventURL, fModel.GetAPIUploadEntity(path, fileName, fileExtension), lByteArray); }
  • 相关阅读:
    roscore提示“ModuleNotFoundError: No module named 'defusedxml'”的解决。
    Linux下/home/用户名/.local文件
    vscode 使用技巧一-列编辑。
    Ubuntu下安装visual studio code
    第一阶段(七)
    第一阶段(六)
    Python爬取imdb电影数据并存储到mysql数据库
    第一阶段(五)
    第一阶段(四)
    第一阶段(三)
  • 原文地址:https://www.cnblogs.com/zhangweidong/p/5169230.html
Copyright © 2011-2022 走看看