亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用ASP.NET MVC怎么批量上傳文件

發布時間:2021-05-14 17:19:35 來源:億速云 閱讀:246 作者:Leah 欄目:開發技術

這期內容當中小編將會給大家帶來有關使用ASP.NET MVC怎么批量上傳文件,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

一、單文件上傳

單文件上傳的原理是將文件數據放入request中,由頁面直接傳遞至后臺controller中,類似于view和controller之間傳參數,直接貼上代碼加注釋。
Upload.aspx文件中的代碼:

<form enctype="multipart/form-data" method="post">
  <input type="file" id="file" />
  <input type="submit" value="上傳" />
</form>

Controller中代碼:

[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
    file = Request.Files[0]; //服務器上的UpLoadFile文件夾必須有讀寫權限
    string target = Server.MapPath("/")+("/Mock/Learning/");//取得目標文件夾的路徑
    string filename = file.FileName;//取得文件名字
    string path = target + filename;//獲取存儲的目標地址
    file.SaveAs(path);}
    return View();
}

這里需要注意的是,在ASP.NET中,request的默認大小為4M,因此,如需上傳較大文件,需要更改Web.config。

<system.web>
  <httpRuntime maxRequestLength="40960"/> 
</system.web>

二、批量文件上傳

思路是通過js根據用戶需求動態添加上傳控件,多個文件通過request一并上傳至controller。
Upload.aspx文件中的代碼:

<form enctype="multipart/form-data" method="post">
  <div id="FileList">
    <div>
      <input type="file" id="file" name="file0"/>
    </div>
  </div>
  <p>
    <a onclick="AddFile();">添加文件</a>
  </p>
  <p>
    <input type="submit" value="上傳" />
  </p>
</form>

<script>
var index = 1;    
function AddFile() {      
  var ul = document.getElementById("FileList");
  var inputDiv = document.createElement("div");
  inputDiv.setAttribute("Id", "div" + index);
  var file = document.createElement("input");
  file.setAttribute("type", "file");
  file.setAttribute("id", "file" + index);
  file.setAttribute("name", "file" + index);
  var btnDel = document.createElement("input");
  btnDel.setAttribute("type", "button");
  btnDel.setAttribute("value", "刪除");
  btnDel.setAttribute("Id", index);
  btnDel.onclick = function() {
    inputDiv.removeChild(file);
    inputDiv.removeChild(btnDel);
    ul.removeChild(inputDiv);
  }      
  inputDiv.appendChild(file);
  inputDiv.appendChild(btnDel);
  ul.appendChild(inputDiv);
  index++;
}
</script>

Controller中的代碼:

[HttpPost]    
public ActionResult Upload(FormCollection form)    
{      
  foreach (string item in Request.Files)
  {        
    HttpPostedFileBase file = Request.Files[item] as HttpPostedFileBase;        
    if (file==null || file.ContentLength == 0)
      continue;  
    //判斷Upload文件夾是否存在,不存在就創建
    string path = Server.MapPath("..//Upload"); 
    if (!System.IO.Directory.Exists(path)) 
    {          
      System.IO.Directory.CreateDirectory(path); 
    }       
    path = AppDomain.CurrentDomain.BaseDirectory + "Upload/";       
    //獲取上傳的文件名  
    string fileName = file.FileName; 
    //上傳   
    file.SaveAs(Path.Combine(path,fileName)); 
  }      
  return Content("<script>alert('上傳文件成功');window.history.back();</script>");   
}

ASP.NET 是什么

ASP.NET 是開源,跨平臺,高性能,輕量級的 Web 應用構建框架,常用于通過 HTML、CSS、JavaScript 以及服務器腳本來構建網頁和網站。

上述就是小編為大家分享的使用ASP.NET MVC怎么批量上傳文件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

敖汉旗| 诸暨市| 武汉市| 淳安县| 水富县| 万宁市| 咸宁市| 托里县| 锦州市| 河曲县| 巫山县| 吉安市| 武强县| 富宁县| 双鸭山市| 股票| 农安县| 武冈市| 同仁县| 江西省| 称多县| 玛多县| 健康| 巴林右旗| 肇东市| 怀仁县| 南和县| 永修县| 友谊县| 虹口区| 佛教| 宁蒗| 叙永县| 五河县| 达拉特旗| 陇南市| 噶尔县| 荥经县| 龙川县| 响水县| 宝鸡市|