آپلود چند فایل  و تصویر به طور همزمان در Asp.Net Core
1 0

آپلود چند فایل و تصویر به طور همزمان در Asp.Net Core


آپلود چند فایل و تصویر به طور همزمان در Asp.Net Core

در این پست قصد داریم تا نحوه آپلود چندین فایل و تصویر را به صورت همزمان در Asp.Net Core را مورد بررسی قرار دهیم.

ابتدا کنترلری به نام UploadFileController ایجاد کنید و کدهای آن را به صورت زیر تغییر دهید

using System.Collections.Generic;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Net.Http.Headers;

namespace MvcAspCore.Controllers
{
    public class UploadFileController : Controller
    {
        private IHostingEnvironment hostingEnv;

        public UploadFileController(IHostingEnvironment env)
        {
            // for upload File
            this.hostingEnv = env;
        }

        #region UploadFiles

        public IActionResult UploadFiles()
        {
            return View();
        }

        [HttpPost]
        public IActionResult UploadFiles(IList<IFormFile> files)
        {
            long size = 0;
            foreach (var file in files)
            {
                var filename = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
                filename = hostingEnv.WebRootPath + $@"\{filename}";
                size += file.Length;
                using (System.IO.FileStream fs = System.IO.File.Create(filename))
                {
                    file.CopyTo(fs);
                    fs.Flush();
                }
            }
            ViewBag.Message = $"{files.Count} file(s) / { size}bytes uploaded successfully!";
            return View();
        }
        #endregion
    }
}

در اینجا ابتدا تنظیمات اولیه در سازنده کنترلر انجام دادیم و سپس یک متد از نوع IActionResult  به نام UploadFiles ایجاد کردیم و برای آپلود چندین فایل از یک foreach برای خواندن فایل های دریافتی از سمت کاربر استفاده کردیم.

 

کدهای View

حال یک view برای متد UploadFiles ایجاد کنید و کدهای آن را به صورت زیر تغییر دهید

@{
    ViewData["Title"] = "آپلود فایل";
}

<form asp-action="UploadFiles" asp-controller="UploadFile" method="post" enctype="multipart/form-data">
    <input type="file" name="files" multiple/>
    <input type="submit" value="آپلود"/>
</form>
@ViewData["ViewBag.Message"]

در کدهای بالا کار خاصی انجام ندادیم و فقط یک فرم برای آپلود ایجاد کردیم.

دانلود

نویسنده حسین فتحی
گروه مطلب Asp.Net Core
نوع مطلب سورس کد و آموزش
تاریخ انتشار ۲۵ اسفند ۱۳۹۵
منبع ایران گنج
تعداد نظرات ۰
قیمت کاربران مهمان
توضیح توجه:
  • زمانی که روی لینک دانلود کلیک می کنید لینک دانلود به مدت 24 ساعت معتبر خواهد بود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

نظر / سوال

Captcha