---
title: "How to File Upload ASP.NET MVC 3"  
description: "How to File Upload ASP.NET MVC 3"  
author: "Mark Devid"  
published: 2015-02-02  
updated: 2015-02-02  
canonical: https://www.mindstick.com/forum/12929/how-to-file-upload-asp-dot-net-mvc-3  
category: "asp.net"  
tags: ["c#", "asp.net mvc", "mvc3"]  
reading_time: 1 minute  

---

# How to File Upload ASP.NET MVC 3

I want to [upload](https://www.mindstick.com/forum/12860/how-to-upload-file-asynchronously-using-generic-handler) [file](https://www.mindstick.com/articles/59/encrypting-and-decrypting-files-using-c-sharp) in [asp.net](https://www.mindstick.com/articles/934/default-folders-available-inside-the-asp-dot-net-application-folder)-mvc. How can I upload the file using [html](https://www.mindstick.com/articles/1530/design-a-simple-stylish-calculator-using-html-css-and-javascript) [input](https://www.mindstick.com/forum/159209/how-can-i-read-convert-an-input-stream-into-a-string-in-java) file [control](https://www.mindstick.com/blog/197/asp-dot-net-repeater-control)?

## Replies

### Reply by Anonymous User

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");            }}
```


---

Original Source: https://www.mindstick.com/forum/12929/how-to-file-upload-asp-dot-net-mvc-3

Copyright © MindStick Software Pvt. Ltd. This Markdown version is provided for developers, AI systems, and offline reading.
