File Upload ASP.NET MVC 3.0

后端 未结 21 1356
无人共我
无人共我 2020-11-22 01:09

(Preface: this question is about ASP.NET MVC 3.0 which was released in 2011, it is not about ASP.NET Core 3.0 which was released in 2019)

I want to

21条回答
  •  猫巷女王i
    2020-11-22 01:39

    Since i have found issue uploading file in IE browser i would suggest to handle it like this.

    View

    @using (Html.BeginForm("UploadFile", "Home", FormMethod.Post, new { enctype = "multipart/form-data" }))
    {
        
        
    }
    

    Controller

    public class HomeController : Controller
    {
        public ActionResult UploadFile()
        {
            return View();
        }
    
        [HttpPost]
        public ActionResult UploadFile(MyModal Modal)
        {
                string DocumentName = string.Empty;
                string Description = string.Empty;
    
                if (!String.IsNullOrEmpty(Request.Form["DocumentName"].ToString()))
                    DocumentName = Request.Form["DocumentName"].ToString();
                if (!String.IsNullOrEmpty(Request.Form["Description"].ToString()))
                    Description = Request.Form["Description"].ToString();
    
                if (!String.IsNullOrEmpty(Request.Form["FileName"].ToString()))
                    UploadedDocument = Request.Form["FileName"].ToString();
    
                HttpFileCollectionBase files = Request.Files;
    
                string filePath = Server.MapPath("~/Root/Documents/");
                if (!(Directory.Exists(filePath)))
                    Directory.CreateDirectory(filePath);
                for (int i = 0; i < files.Count; i++)
                {
                    HttpPostedFileBase file = files[i];
                    // Checking for Internet Explorer  
                    if (Request.Browser.Browser.ToUpper() == "IE" || Request.Browser.Browser.ToUpper() == "INTERNETEXPLORER")
                    {
                        string[] testfiles = file.FileName.Split(new char[] { '\\' });
                        fname = testfiles[testfiles.Length - 1];
                        UploadedDocument = fname;
                    }
                    else
                    {
                        fname = file.FileName;
                        UploadedDocument = file.FileName;
                    }
                    file.SaveAs(fname);
                    return RedirectToAction("List", "Home");
    }
    

提交回复
热议问题