آموزش آپلود چندگانه به صورت Ajax در Asp.Net
0 0

آموزش آپلود چندگانه به صورت Ajax در Asp.Net


آموزش آپلود چندگانه به صورت Ajax در Asp.Net

در این پست آموزش کامل آپلود چندگانه فایل ها به صورت Ajax با استفاده از jquery در Asp.Net را قرار داده ایم.

برای آپلود تصاویر و فایل ها در Asp.Net روش های متفاوتی وجود دارد در این آموزش ما به صورت کامل و بدون Refresh شدن صفحه با استفاده از Ajax فایل ها و تصاویر را در Asp.Net آپلود می کنیم .

ابتدا آخرین نسخه از JQuery را به برنامه خود اضافه کنید. سپس در صفحه ای که می خواهید آپلود انجام شود کدهای زیر را اضافه کنید.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>ایران گنج</title>
    <script src="Scripts/jquery-2.1.3.min.js"></script>

    <script type="text/javascript">
        $(document).ready(function () {
            $("#btnUpload").click(function (evt) {
                var fileUpload = $("#FileUploadAjax").get(0);
                var files = fileUpload.files;

                var data = new FormData();
                for (var i = 0; i < files.length; i++) {
                    data.append(files[i].name, files[i]);
                }

                var options = {};
                options.url = "FileUploadHandler.ashx";
                options.type = "POST";
                options.data = data;
                options.contentType = false;
                options.processData = false;
                options.success = function (result) { alert(result); };
                options.error = function (err) { alert(err.statusText); };

                $.ajax(options);

                evt.preventDefault();
            });
        });
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <asp:FileUpload ID="FileUploadAjax" runat="server" AllowMultiple="true" />
        <br />
        <br />
        <asp:Button ID="btnUpload" runat="server" Text="آپلود" />
    </form>
</body>
</html>

حالا یک Generic Handler به نام FileUploadHandler.ashx به پروژه خود اضافه کنید و سپس کدهای آن را به صورت زیر تغییر دهید.

<%@ WebHandler Language="C#" Class="FileUploadHandler" %>

using System;
using System.Web;

public class FileUploadHandler : IHttpHandler
{

    public void ProcessRequest(HttpContext context)
    {
        if (context.Request.Files.Count > 0)
        {
            HttpFileCollection files = context.Request.Files;
            for (int i = 0; i < files.Count; i++)
            {
                HttpPostedFile file = files[i];
                string fname = context.Server.MapPath("~/uploads/" + file.FileName);
                file.SaveAs(fname);
            }
        }
        context.Response.ContentType = "text/plain";
        context.Response.Write("فایل های با موفقیت آپلود شدند!");
    }

    public bool IsReusable
    {
        get
        {
            return false;
        }
    }
}

در کده های بالا مسیر آپلود را مشخص کردیم که پوشه uploads در ریشه سایت قرار دارد.

در پست های قبلی نحوه کنترل فایل های آپلودی را آموزش دادیم که می توانید حجم ، اندازه و فرمت فایل آپلودی در FileUploadHandler کنترل کنید.

دانلود

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

نظر / سوال

Captcha

این صفحه را می‌پسندم