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"); } }
Manoj Bhatt
So you would start by creating an HTML form which would contain a file input: