آپلود چندیدن فایل در Asp.Net با امکان Drag and Drop

در این مقاله میخواهیم آپلود همزمان چندیدن فایل همراه با ProgressBar در Asp.Net را آموزش دهیم

آپلود چندیدن فایل  در   Asp.Net با امکان Drag and Drop

در این مقاله میخواهیم آپلود همزمان چندیدن فایل همراه با ProgressBar در Asp.Net را آموزش دهیم.

برای این کار از کنترل Toolkit AjaxFileUpload در Asp.Net استفاده می کنیم این کنترل به کاربر اجازه آپلود چندین فایل را میدهد .

از آدرس زیر میتوانید آخرین نسخه AJAX Control Toolkit را دانلود کنید:

Download ASP.Net AJAX Control Toolkit

پس از دانلود رفرنس های آنرا به پروژه اضافه کنیدسپس آنرا را در ابتدای صفحه ثبت کنید:

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>

صفحه Html  شامل ToolkitScriptManager و کنترل Asp.Net Ajaxو کنترل Toolkit AjaxFileUpload میشود.

 خصوصیت MaximumNumberOfFiles  برای جلوگیری از انتخاب بیشتر کاربر برای آپلود می باشد.

رویداد OnUploadComplete اتفاق می افتد زمانی که روی دکمه Upload از کنترل AjaxFileUpload کلیک میشود:

<asp:ToolkitScriptManager runat="server">
</asp:ToolkitScriptManager>
<asp:AjaxFileUpload ID="AjaxFileUpload11" runat="server" MaximumNumberOfFiles="5"
    Width="400px" OnUploadComplete="OnUploadComplete" />
فضای نام های مورد استفاده :
 
using System.IO;
using AjaxControlToolkit;

 رویداد OnUploadComplete:

در این رویداد زمانی که یک فایل آپلود شد نام فایل گرفته میشود و سپس فایل در مسیر مشخصی توسط متد saveAs ذخیره میشود:

protected void OnUploadComplete(object sender, AjaxFileUploadEventArgs e)
{
    string fileName = Path.GetFileName(e.FileName);
    AjaxFileUpload11.SaveAs(Server.MapPath("~/Uploads/" + fileName));
}

تنظیمات Web.Config Configuration :

شما باید اضافه کنید هندلر را در دو قسمت  system.web و system.webserver :

<system.web>
    <httpHandlers>
        <add verb="*POST" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/>
    </httpHandlers>
</system.web>
<system.webServer>
    <handlers>
        <add name="AjaxFileUploadHandler" verb="POST" path="AjaxFileUploadHandler.axd" type="AjaxControlToolkit.AjaxFileUploadHandler, AjaxControlToolkit"/>
    </handlers>
</system.webServer>

 

 
 
فایل های ضمیمه