Home > DeveloperSection > Forums > How to File Upload ASP.NET MVC 3
Mark Devid
Mark Devid

Total Post:101

Points:707
Posted on    February-02-2015 10:22 PM

 ASP.Net C#  ASP.NET MVC  Mvc3 
Ratings:


 1 Reply(s)
 498  View(s)
Rate this:

I want to upload file in asp.net-mvc. How can I upload the file using html input file control?



jacob rasel
jacob rasel

Total Post:88

Points:616
Posted on    February-02-2015 10:42 PM

You don't use a file input control. Server side controls are not used in ASP.NET MVC. Checkout thefollowing blog post which illustrates how to achieve this in ASP.NET MVC.

So you would start by creating an HTML form which would contain a file input:

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

{

    <input type="file" name="file" />

    <input type="submit" value="OK" />

}

and then you would have a controller to handle the upload:

public class HomeController : Controller

{

    // This action renders the form

    public ActionResult Index()

    {

        return View();

    }

 

    // This action handles the form POST and the upload

    [HttpPost]

    public ActionResult Index(HttpPostedFileBase file)

    {

        // Verify that the user selected a file

        if (file != null && file.ContentLength > 0)

        {

            // extract only the fielname

            var fileName = Path.GetFileName(file.FileName);

            // store the file inside ~/App_Data/uploads folder

            var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);

            file.SaveAs(path);

        }

        // redirect back to the index action to show the form once again

        return RedirectToAction("Index");       

    }

}


Don't want to miss updates? Please click the below button!

Follow MindStick