ASP.NET MVC File Upload

Merhaba. Mvc'de file upload işlemlerine göz atalım. Projemizde upload yapacağımız controller ve view'ı oluşturduktan sonra html(view) kısmında formumuzu oluşturalım.

@using (Html.BeginForm("Index""Home"FormMethod.Post, new { enctype = "multipart/form-data" }))
{
    @TempData["result"//Dosya upload sonucu burada yazacak.
    <div>
        <input type="file" name="file" class="button" />
        <input type="submit" value="Gönder" class="button" />
    </div>
}

Html kısmını bitirdikten sonra controller'da gerekli işlemlerimizi yapalım.

[HttpPost]
public ActionResult Index(HttpPostedFileBase file)
{
    if (file != null && file.ContentLength > 0)
    {
        var path = Path.Combine(Server.MapPath("~/Upload_Edilecek_Klasörümüz"), file.FileName);
        file.SaveAs(path);
        TempData["result"] = "Güncelleme Başarılı.";
    }

    return View();
}

Burada dikkat edilmesi gereken nokta View'da file tipindeki input'un name'i ile Controllerda Action'ın aldığı HttpPostedFileBase tipindeki parametre adının aynı olmasıdır. Diğer dikkat edilmesi gereken nokta ise Upload yapılan klasöre yazma izninin verilmesidir. Evet işlemlerimiz bu kadar. Hepinize kolay gelsin.

Mehmet YAYLACI
YORUMLAR (5)
  1. BariscanYılmaz
    BariscanYılmaz

    16 Mart 2013 - 02:58

    Allah razı olsun :)

  2. Mehmet Yener YILMAZ
    Mehmet Yener YILMAZ

    26 Haziran 2014 - 12:38

    Hocam elinize sağlık, birde ajax ile dosya yükleme işlemi örneği paylaşır mısınız ? mümkünse view üzerinde ayrıntılı yorum satırları ile birlikte...

  3. Serhat
    Serhat

    18 Mart 2015 - 11:40

    Çok teşekkür ederim sağolun.

  4. altunok
    altunok

    17 Nisan 2018 - 12:00

    Elinize sağlık. Peki yüklendiğini “Progresbar” ile nasıl gösterebilirim?

    • Mehmet YAYLACI
      Mehmet YAYLACI

      17 Nisan 2018 - 13:17

      Jquery progress bar diye aratırsanız bir sürü kütüphane mevcut. Beğendiğiniz bir tanesini kullanabilirsiniz.

YORUM YAPIN