مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش آپلود فایل در ASP.NET به همراه نمونه کد و مثال


بارگذاری فایل در ASP.NET

ASP.NET دو کنترل دارد که اجازه می دهند کاربران فایل های خود را در وب سرور بارگذاری (upload) نمایند. هنگامی که سرور داده های فایل پست شده را دریافت می کند ، برنامه کاربردی آن را ذخیره کرده و بررسی می نماید و یا در صورت لزوم از آن صرف نظر می کند. کنترل های زیر امکان آپلود کردن فایل را فراهم می سازند:

  • HtmlInputFile : کنترل سرور HTML
  • FileUpload : کنترل وب ASP.NET

هر دو فایل امکان بارگذاری فایل را فراهم می کنند ، اما کنترل FileUpload به طور خودکار فرم رمزگذاری را تنظیم می نماید ، در حالی که HtmlInputFile این کار را انجام نمی دهد.

در این آموزش ، ما از کنترل FileUpload استفاده می کنیم. کنترل FileUpload اجازه می دهد که کاربر فایل را برای بارگذاری پیدا کرده و آن را انتخاب نماید. این کار را از طریق فراهم نمودن کلید browse و یک text box برای وارد کردن نام فایل انجام می دهد.

هنگامی که کاربر نام فایل را در کادر متن تایپ نمود و یا آن را browse کرد ، می توان متد SaveAs از کنترل FileUpload را برای ذخیره کردن فایل در هارد دیسک وب سرور فراخوانی نمود.

قاعده نوشتاری (syntax) کنترل FileUpload به صورت زیر می باشد:

<asp:FileUpload ID= "Uploader" runat = "server" />

کلاس FileUpload از کلاس WebControl مشتق شده و تمام اعضاء آن را به ارث برده است. جدا از آن، کلاس FileUpload دارای خواص فقط خواندنی (read-only) زیر می باشد:

خصیصه

توضیحات

FileBytes

یک آرایه از بایت های فایل آپلود شده را باز می گرداند.

FileContent

شیء stream اشاره گر به فایل آپلود شده را باز می گرداند.

FileName

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

HasFile

مشخص می کند که آیا کنترل یک فایل برای آپلود شدن دارد یا خیر.

PostedFile

یک مرجع (reference) را برای فایل آپلود شده باز می گرداند.

فایل پست شده به صورت کپسوله سازی شده در یک شیء از نوع HttpPostedFile می باشد ، که می تواند از طریق خصیصه PostedFile از کلاس FileUpload مورد دسترسی قرار گیرد.

کلاس HttpPostedFile دارای خصیصه های زیر می باشد:

خصیصه

توضیحات

ContentLength

تعداد بایت های فایل آپلود شده را باز می گرداند.

ContentType

نوع MIME فایل آپلود شده را باز می گرداند.

FileName

نام کامل فایل را باز می گرداند.

InputStream

شیء stream اشاره گر به فایل آپلود شده را باز می گرداند.

 

مثال

مثال زیر کنترل FileUpload و خصیصه های آن را نشان می دهد. در این مثال ، فرم حاوی یک کنترل FileUpload می باشد که با کلید save و کنترل برچسب برای نمایش دادن نام فایل ، نوع فایل و طول فایل همراه است.

در تصویر زیر ، design view مثال را مشاهده می نمایید:

کد فایل content به صورت زیر می باشد:

<body>
   <form id="form1" runat="server">
   
      <div>
         <h3> File Upload:</h3>
         <br />
         <asp:FileUpload ID="FileUpload1" runat="server" />
         <br /><br />
         <asp:Button ID="btnsave" runat="server" onclick="btnsave_Click"  Text="Save" style="width:85px" />
         <br /><br />
         <asp:Label ID="lblmessage" runat="server" />
      </div>
      
   </form>
</body>

کد پشت کلید save به صورت زیر است:

protected void btnsave_Click(object sender, EventArgs e)
{
   StringBuilder sb = new StringBuilder();
   
   if (FileUpload1.HasFile)
   {
      try
      {
         sb.AppendFormat(" Uploading file: {0}", FileUpload1.FileName);
         
         //saving the file
         FileUpload1.SaveAs("<c:\\SaveDirectory>" + FileUpload1.FileName);
      
         //Showing the file information
         sb.AppendFormat("<br/> Save As: {0}",  FileUpload1.PostedFile.FileName);
         sb.AppendFormat("<br/> File type: {0}",    FileUpload1.PostedFile.ContentType);
         sb.AppendFormat("<br/> File length: {0}",  FileUpload1.PostedFile.ContentLength);
         sb.AppendFormat("<br/> File name: {0}",  FileUpload1.PostedFile.FileName);
         
      }catch (Exception ex)
      {
         sb.Append("<br/> Error <br/>");
         sb.AppendFormat("Unable to save file <br/> {0}", ex.Message);
      }
   }
   else
   {
      lblmessage.Text = sb.ToString();
   }
}

به موارد ذیل توجه نمایید:

  • کلاس StringBuilder از فضای نام System.IO مشتق شده ، از این رو نیاز است که include شود.
  • بلوک های try و catch برای گرفتن خطا و نمایش پیام خطا مورد استفاده قرار گرفته اند.
فصلِ: 5 , تعداد قسمت ها: 176 , سطح: صفر تا صد

این فصل در یک نگاه:

در این فصل پس از بررسی سیستم مسیریابی و طراحی صفحه نمایش ویدیو ها، به سراغ پنل کاربری خواهیم رفت و مباحث Model Binding و…

توجه: این دوره آموزشی به صورت پیوسته بر اساس آخرین نسخه ی ASP.NET Core بروزرسانی خواهد شد.   آموزش صفر تا صد طراحی سایت اشتراک ویدیو مشابه آپارات با استفاده از  ASP.NET CORE  MVC 3.0 و V…
فصلِ: 8 , تعداد قسمت ها: 357 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: در این مجموعه قصد داریم تا فروشگاه اینترنتی دیجی کالا رو با Asp.Net Core3 پیاده سازی کنیم. ابتدا طراحی قالب دیجی کالا رو به صورت کامل انجام خواهیم داد. در مرحله میریم …
فصلِ: 5 , تعداد قسمت ها: 135 , سطح: صفر تا صد

این فصل در یک نگاه:

توضیحات کلی مجموعه: در این مجموعه آموزشی، با استفاده از جدیدترین تکنولوژی ها و ابزار های مایکروسافت (دات نت)، به یک پروژه جذاب مدیریت آگهی مشابه دیوار می پردازیم. این آموزش در دو بخش کلی و…
فصلِ: 7 , تعداد قسمت ها: 153 , سطح: صفر تا صد
موضوعات: آموزش ASP.NET

این فصل در یک نگاه:

در این دوره به آموزش صفر تا صد جدیدترین نسخه ASP یعنی CORE جدیدترین ورژن خواهیم پرداخت.این آموزش از سطح مقدماتی تا فوق …

دوره آموزش کامل طراحی وب به همراه پروژه ساخت سیستم مدیریت کتابخانه  این دوره  با کور 1 آغاز می شود و در ادامه پروژه به کور 2 تبدیل می شودو پروژه نهایی (سیستم مدیریت کتابخانه) با Asp.net کور…
فصلِ: 1 , تعداد قسمت ها: 5 , سطح: متوسط

این فصل در یک نگاه:

ساخت محیط کاربریآموزش نحوه ی ارسال ایمیل در Asp.net MVCآموزش تنظیمات Gmail برای استفادهاستفاده از Yahooاستفاده از سرویس …

به نام خدا... در خدمتتون هستم با آموزش ارسال ایمیل در Asp.net MVC... ارسال ایمیل یکی از اجزای اصلی ییک سایت به شمار می رود و واقعا سایتی که برای اجزای مختلفش همانند ثبت کاربر جدید و یا ارسال…
فصلِ: 2 , تعداد قسمت ها: 62 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل دوم در یک نگاه:فصل دوم در یک نگاه:…

در این پکیج به مبحث طراحی وب ، در قالب ساخت یک سایت فروشگاهی 5040 به آدرس http://5040.ir می پردازیم که به جرات مشهورترین و یکی از برترین فروشگاه های مجازی در کشور است. در این مجموعه قصد داری…
فصلِ: 4 , تعداد قسمت ها: 78 , سطح: متوسط

این فصل در یک نگاه:

در این دوره آموزشی، وبسایت ورزش3 را با استفاده از ASP.NET Core پیاده سازی می کنیم و همچنین اپ اندروید آن را هم با Xamarin متصل به سرور سایت طراحی و در نهایت نحوه انتشار آن در مارکت هایی مثل …
فصلِ: 1 , تعداد قسمت ها: 14 , سطح: متوسط

این فصل در یک نگاه:

کاملترین آموزش هاست و کار با سی پنل.در هنگام خرید سرویس هاست کلمه ای به نام “کنترل پنل” را زیاد خواهید دید آیا تا به حال…

سی پنل یک کنترل پنل هاست محبوب و معروف در جهان و ایران است. در فیلم آموزش سی پنل هم توصیه اکید شده تا افراد مبتدی و حتی افراد حرفه ای از این کنترل پنل هاست سی پنل استفاده کنند. آموزش cpanel …
فصلِ: 5 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل پنجم…

توضیحات کلی مجموعه: درباره گیت: لذت پیش بردن پروژه های برنامه نویسی خود را با بهترین ورژن کنترل سیستم جهان تجربه کنید کامل ترین دوره ی آموزشی گیت و گیت هاب به همراه مثال های کاربردی گی…
فصلِ: 1 , تعداد قسمت ها: 15 , سطح: متوسط

این فصل در یک نگاه:

رشد و درآمدزایی یک وب سایت یا کسب و کار اینترنتی کاملا به ذوق و مهارت وب مستر یا همان مدیر اصلی وب سایت گره خورده و متاس…

 اصول مدیریت وب سایت برای وب مستر شدن برای موفقیت یک وب سایت لازم الاجراست. زیرا شما دوست دارید وب سایت خود را به کارخانه پولسازی تبدیل کنید. این واقعیت رویا نیست. هرکس این اصول را بداند به …

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید