MVC上傳文件


ASP.NET MVC上傳文件是必段撐握的知識。加強訓練才是。
以前Insus.NET曾使用第三方MyAjaxForm.js :http://www.cnblogs.com/insus/p/3785484.html 

或者是jQuery的Uploadify組件:http://www.cnblogs.com/insus/p/3590907.html 

還有一篇可以參考的,VS標准標簽input 的type="file":http://www.cnblogs.com/insus/p/4040352.html

今天還是參考上面最后篇,實現上傳單一或是多個文件,不過語法有所改變:
創建一個控制,一個視圖操作,一個操作是處理上傳文件方法:



代碼:

public ActionResult UploadFile()
        {            
            return View();
        }

        [HttpPost]
        public ActionResult ProcessUploadFiles(IEnumerable<HttpPostedFileBase> filename)
        {
            foreach (var file in filename)
            {
                if (file.ContentLength > 0)
                {
                    var fileName = Path.GetFileName(file.FileName);
                    var path = Path.Combine(Server.MapPath("~/Temp"), fileName);
                    file.SaveAs(path);
                }
            }
            return RedirectToAction("UploadFile");
        }
View Code


再來看看視圖的實現:

 

上面的filename名字需要匹配。如果不一樣,在運行時會呈現異常,參考下面動畫演示:



如果需要同時上傳多個文件,我們只管拉多幾個:

<input type="file" name="filename" id="file1" />
View Code


如同時上傳3個:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM