تبلیغات
مقالات آموزشی برنامه نویسی و شبکه - مطالب آموزش ASP.NET

سه اصل مهم در برنامه نویسی که همیشه باید به یاد داشته باشید

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

جوملا کارا و وردپرس کارا (توهین نشه، منظورم همکارانیه که با نرم افزارهای مشتری رو با بیس جوملا و وردپرس) دقیقا چیزی رو به مشتری میدن که بهش نیاز داره. نه کمتر و نه بیشتر. همیشه همه چیز رو به ساده ترین و سریع ترین روشی که میشه پیاده سازی می کنن؛ چیزی که شاید ما ASP کارها باید یاد بگیریم!
ما همیشه دوست داریم نرم افزارها را طوری بسازیم که نیازهای آتی کارفرما رو هم پوشش بده، البته این به تنهایی مشکلی نیست ولی مشکل از جایی پیش میاد که گاهی زیاده روی می کنیم. اینجاست که باید به یاد همکارامون بیفتیم. گاهی واقعا نیاز نیست که یک نرم افزار خیلی کامل و خوب و عالی بسازیم.
اگر مشتری فروشگاه الکترونیک ساده می خواد، نیاز نیست یک سیستم سبد خرید خیلی عالی یا یک سیستم حسابداری یا انبارداری براش بسازیم. همین که یک نفر بتونه بیاد توی فروشگاه چیزی که می خواد رو پیدا کنه و خریدشو انجام بده کافیه.

البته نمی خوام بگم قیمت پروژه های ASP واسه اینه که ما داریم چیزای اضافی می سازیم. بخشی از قیمت به دلیل اینه که ما از 0 همه چیز رو می سازیم و بخش دیگر مسئولیت پروژه است. مثلا وقتی شما دارید یک پروژه تراکنش های ارزی-ریالی تمام خودکار می نویسید، مطمئنا مسئولیت خیلی زیادی رو به دوش کشیده اید، هر گونه باگ امنیتی مساوی است با میلیون ها تومان ضرر مالی برای مشتری شما پس باید خیلی خیلی وقت بذارید تا هیچ باگی روی نرم افزار وجود نداشته باشه. کلیه محاسبات دقیق و بی نقص باشن و هزاران نگرانی دیگر ...

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

نوشته شده در تاریخ چهارشنبه 5 آبان 1395    | توسط: ح.م    | طبقه بندی: مهندسی نرم افزار، آموزش ASP.NET،     | نظرات()


تفاوت پروژه یک میلیونی با پروژه 5 میلیونی !

خیلی از مشتریان سوال می پرسن که چرا شما 5 تومن می گیری ولی فلان شرکت با جوملا میزنه 1 تومن !؟

عمده تفاوت قیمت به مسئله کیفیت کار و خدمات پشتیبانی معطوف می گردد

بعنوان نمونه تفاوت کیفیت می توان به دو لینک زیر اشاره نمود:

یک فرم به ظاهر ساده در یک پروژه یک میلیونی :

 http://www.bahmanemployment.com/information.aspx

یک فرم به ظاهر ساده در یک پروژه 5 میلیونی :

http://fa.fanap.ir/node/add/resume

 

با مشاهده 2 نمونه بالا می توان فهمید که تا چه حد می توان روی یک فرم به ظاهر ساده کار کرد ...

حال همین مثال را می توان به کل صفحات پروژه بسط داد تا مشتری تفاوت را کاملا لمس نماید.

 در ادامه توضیحات تکمیلی جهت تکمیل بحث ارائه می گردد.

 

عوامل مهم موفقیت در راه اندازی یک کسب و کار مبتنی بر وب:

طبق تجربه بنده ، توی عرصه وب پول خوب بدست نمیاری مگر اینکه 3 اصل زیر رو داشته باشی :

 

1- ایده خوب

اگر ایده شما یک ایده تک باشه خوب خیلی عالیه ، ولی اگر تک هم نباشه می تونه ایده ای باشه که کامل شده ایده دیگران باشه

 

2- پیاده سازی صحیح و کامل ایده

ایده باید به نحوی پیاده سازی بشه که مشتری رو به خودش جذب کنه و مشتری باهاش راحت بتونه ارتباط برقرار کنه

در این بخض به مثال ابتدای مقاله می توان اشاره نمود

 

3- صرف وقت و هزینه

باید پشت ایدتون بمونین و روش وقت بذارید

تجربه ثابت کرده که خیلی از پروژه ها در همین مرحله متوقف میشن

نمونه عملیش سایت WhatsJob.ir است که حدود 3 ماه با تلاش یک تیم روش کار کردیم و ایده و پیاده سازیش عالی بود ولی بانیان پروژه پای ایدشون نموندند و بعد از حدود 9 ماه تازه دارن روش دیتا اینتری انجام میدن !

 

مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

شاخص های مهم یک نرم افزار خوب:

 

·        تکنولوژی ساخت

·        معماری نرم افزار

·        امکان توسعه راحت و سریع در آینده

·        پشتیبانی مناسب (در صورت بروز خطا و یا نیاز به توسعه نرم افزار در آینده)

·        بومی بودن کامل نرم افزار جهت اطمینان از امنیت هسته نرم افزار

·        طراحی و پیاده سازی شده بصورت اختصاصی بر اساس نیاز کارفرما

·        میزان تحمل بار

·        میزان تحمل تعداد تراکنش در لحظه

·        طراحی کاربر پسند

·        امکانات مدیریتی ارائه شده در نرم افزار و میزان مدیریت بخش های مختلف سایت

·        امنیت کنترل پنل ها ، اطلاعات تراکنش ها و اطلاعات کاربران سایت

·        امکانات بکاپ گیری از اطلاعات

·        انواع گزارشات

·        سیستم ثبت و گزارش دهی لاگ

·        سیستم لاگ خطاهای نرم افزار

 

موفق باشید

نوشته شده در تاریخ شنبه 27 دی 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، اطلاعیه های مدیریت سایت،     | نظرات()


آموزش تغییر اندازه (ریسایز) تصاویر در asp.net _ بخش دوم

در مقاله قبلی ( آموزش تغییر اندازه (سایز) تصاویر در  asp.net ) با روش تغییر سایز تصاویر (ریسایز تصاویر) در سی شارپ آشنا شدیم.
در این مقاله پا را فراتر از تغییر سایز تصاویر خواهیم گذاشت و روی کاهش حجم تصاویر نیز تمرکز خواهیم کرد.

در روش قبلی حجم تصاویر بند انگشتی (حدودا سایز 150 در 150) نزدیک به 30 کیلوبایت میشد ، حال می خواهیم این حجم را بدون افت کیفیت به حدود 5 الی 8 کیلوبایت برسانیم !

برای این کار می بایست تابعی بنویسیم که کار زیر را انجام دهد:

  1. ریسایز تصویر
  2. تغییر فرمت تصاویر به jpeg
  3. تغییر فرمت رنگ تصاویر به RGB
  4. تغییر رزولیشن تصویر
مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

برای این کار کافی است به کمک امکانات GDI+ سی شارپ بصورت زیر عمل نماییم:

1- ابتدا می بایست طول و عرض جدید تصویرمان را محاسبه نماییم ، طوری که Scale تصویر (نسبت طول به عرضش) به هم نریزد.

2- سپس یک instance از کلاس Bitmap در اندازه های محاسبه شده در مرحله اول و با فرمت رنگی RGB می سازیم و به کمک کلاس Graphics تصویرمان را با کیفیت بالا روی آن ترسیم می نماییم (Draw)

(تصاویر CMYK به درد چاپ می خورند و دارای حجم رنگی بالایی نسبت به تصاویر RGB هستند.)

3- تصویر ساخته شده در مرحله 2 را با فرمت JPEG و با کیفیت مورد نظرمان در مسیر دلخواهمان (روی هارد) ذخیره می نماییم.

اگر مقاله قبلی من ( آموزش تغییر اندازه (سایز) تصاویر در  asp.net ) را خوانده باشید ، دیدید که تابعمان را نتوانستیم بصورت DLL در بیاوریم ، در اینجا برای اینکه بتوانیم کل کدهایمان را بصورت یک کلاس مجزا در بیاوریم و در هر یک از بخش های سایت به راحتی بتوانی از آن استفاده نماییم ، بنده یک ورودی از نوع استریم گرفته ام که در ادامه طریقه کارکرد آن را توضیح خواهم داد.

کد پایانی بصورت زیر می باشد:


ابتدا باید کتابخانه های زیر را درون فایل کلاس داشته باشیم (همه کتابخونه ها رو حذف و فقط همینا رو اضافه کنین)

سپس باید بصورت زیر عمل نماییم:


بعنوان مثال برای استفاده از کتابخانه دست سازمون می بایست بصورت زیر عمل نماییم:

ابتدا کتابخانه رو به صفحمون اضافه می کنیم :

سپس داریم :


دقت کنین که من در اینحا اسم عکسمو یه چیز ثابت گذاشتم ، در عمل باید شما این اسم رو بصورت رندوم  و یونیک تولید کنین ، بطوری که هیچوقت اسم 2 تا فایل تصویریتون مثل هم نشه (همانطور که می دونین اگر یک فایل رو با نام مشابه یک فایل دیگه ذخیره کنین ، روی فایل قبلی ذخیره میشه و فایل قبلیتون از بین میره!)

خوب مسلما در پایان اگر مقدار متغیر flag1 برابر با مقدار true باشه یعنی تصویر با موفقیت ذخیره شده و د ر غیر اینصورت یعنی مشکلی در عملیات ذخیره سازی تصویر رخ داده که در اغلب موارد خروجی false به این دلیله که مسیری که دارین تصویر رو توش ذخیره میکنین دسترسی write نداره.

مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه


امیدوارم که از این کد و آموزش استفاده کنین و حالشو ببرین و سایت نت نیک یا آموزش رو هم از یاد نبرین
در روزهای آتی چند تا آموزش بهتر تر و خفن تر تر روی سایت قرار خواهم داد.
پس اگر برنامه نویس هستین و دنبال یاد گرفتن کد ها و تکنیک های جدید برنامه نویسی بخصصوی asp.net هستین
بهتره مرتب به ما سر بزنین :)
یا توی RSS سایت مشترک بشین ، اینطوری بدون نیاز به وارد شدن به سایت ، خیلی راحت می تونین برین توی منوی Bookmark مرورگرتون و خیلی راحت لیست آخرین مطالب سایت بنده رو ببینین و روی هر کدوم که خواستین کلیک کنین و مستقیم برین و مطلب مورد نظرتونو بخونین

سوالات خودتونو می تونین توی بخش نظرات بپرسین و جوابشو هم 5 تا 24 ساعت بعد همونجا بخونین.

یا حق

موفق باشید


نوشته شده در تاریخ چهارشنبه 22 مرداد 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش سی شارپ،     | نظرات()


آموزش رفع مشکل ابجاد اعداد تصادفی یکسان کلاس Random سی شارپ

در پروژه های asp.net ساخت اعداد تصادفی بسیار کاربرد دارد، بعنوان مثال برای ایجاد نام فایل ها و یا در زمان ایجاد کلمه عبور،
در پروژه های asp.net ایجاد عدد تصادفی با کمک کلاس Random و تابع Next انجام می گیرد که مثالی از آن را در ذیل آورده ام؛ حال آنکه مشکلی که جدیدا در کلاس Random یافته ام این است که اگر بصورت پی در پی و با سرعت بصورت مکرر از این کلاس استفاده نماییم ، امکان دریافت اعداد تصادفی یکسان وجود دارد.

راه حل چیست ؟ چگونه در پروژه های asp.net اعداد تصادفی غیر تکراری با سرعت بالا بسازیم ؟
ابتدا باید توجه نمایید که منظور بنده از سرعت بالا استفاده از این کلاس درون یک حلقه تکرار است و از آنجایی که طبق آزمایشات بنده این کلاس از تاریخ و ساعت و دقیقه و ثانیه و میلی ثانیه جهت ساخت اعداد تصادفی استفاده می نماید، در صورتی که در یک حلقه از این کلاس استفاده نمایید امکان این وجود دارد که در یک میلی ثانیه چندین بار از کلاس استفاده گردد که در اینصورت خروجی یکسانی دریافت خواهید کرد..

برای رفع مشکل ابجاد اعداد تصادفی یکسان کلاس Random  بهتر است (توجه کنید که از کلمه بهتر است استفاده نموده ام ، بدین معنی که ممکن است راه حل های دیگری هم باشد ولی بنده این روش رو تست و جواب گرفته ام) از ورودی کانستراکتور کلاس استفاده نماییم.

کلاس رندوم (Random) سی شارپ یک ورودی در کانستراکتور (سازنده کلاس) می گیرد که از طریق آن می توان تولید عدد تصادفی را کنترل نمود.

این ورودی seed یا بذر نام دارد که در صورتی که در هر بار استفاده از این کلاس یک مقدار منحصر به فرد از نوع int بدهیم ، خیالمان راحت است که خروجی های یکسان برایمان تولید نخواهد نمود.

مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

به نظر می رسد که این بار مشکلمان 2 تا شده است ،  سوال اینجاست که عدد منحصر به فرد از نوع int از کجا بیاریم ؟
پاسخ ساده است ، کلاس GUID سی شارپ برای همین مواقع است

کلاس GUID در پروژه های asp.net بسیار کاربرد دارد، این کلاس برای ایجاد یک عبارت منحصر به فرد می باشد که نمونه خروجی آن بصورت F41FA048-9B13-4421-99BF-6EF725B358D8 می باشد

حال سوالی که پیش می آید این است که چگونه از این عبارت عجیب غریب یک عدد int بدست آوریم ؟
نگران نباشید در کد زیر مثال کامل را می توانید ببینید و در پروژه asp.net خود استفاده نمایید.

نوشته شده در تاریخ جمعه 3 مرداد 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش سی شارپ،     | نظرات()


نمایش تاریخ شمسی در asp.net به کمک Extension Method

در گذشته نمایش تاریخ شمسی در asp.net یکی از چالش های بزرگ برنامه نویسان بود، اما امروزه با وجود متد های الحاقی (Extension Method) این کار به یکی از جالب ترین کارها تبدیل شده است.
قبل از پرداختن به کدها ابتدا باید با ماهیت Extension Method یا متدهای الحاقی آشنا شویم.

Extension Method یا متد الحاقی چیست ؟

متدهای الحاقی توابعی هستند که ما می توانیم از بیرون به یک کلاس اضافه نماییم.

بعنوان مثال کلاس زیر را در نظر بگیرید:




فرض کنید به کدهای داخل کلاس دسترسی نداریم (مثلا یک فایل DLL داریم که کلاس فوق درون آن است و به داخل آن دسترسی نداریم و یا در گذشته یک پروژه نوشته ایم که کلاس فوق در آن استفاده شده است و با تغییر در ساختار کلاس ممکن است مشکلی در پروژه بوجود آید و ...)

برای اینکه بتوانیم یک تابع (متد) به کلاس بالا اضافه نماییم ، داریم :


نکات مهم در متد الحاقی بالا public بودن و استاتیک بودن تابع و کلمه کلیدی this در ورودی تابع می باشد.

دقت نمایید که نام کلاسی که در ادامه کلمه کلیدی this در ورودی تابع می آید ، نشان می دهد که تابع به کدام کلاس الحاق می شود.

دقت نمایید که متدهای الحاقی باید درون یک کلاس با دسترسی public و از نوع static  قرار بگیرد.

جالبی کار در اینجاست که اگر ما یک نمونه (instance) از کلاس Person بسازیم ،به راحتی به متد الحاقی GetFullName دسترسی داریم !




ملاحظه می نمایید که به روش فوق با راحتی توانستیم یک متد را به کلاس Person الحاق نماییم.


نکته دیگر دستور بالا استفاده نکردن از کانستراکتور و بهره گیری از قابلیت جدید سی شارپ می باشد که در آن می توان بدون نیاز به نوشتن کانستراکتور و پاس دادن اطلاعات در آن ، پراپرتی ها را درون دو عدد براکت { } بصورت درجا مقدار دهی نمود.

توضیح اینکه در گذشته برای هر کلاس دو عدد کانستراکتور می نوشتیم که یکی کانستراکتور خالی و دیگری کانستراکتوری بود که به تعداد پراپرتی ها مقدار می گرفت و آنها را درون پراپرتی ها ست می نمود.
امروزه دیگر نیاز به نوشتن کانستراکتور دوم نیست و بصورت بالا می توان خیلی راحت پراپرتی ها را مقدار دهی نمود.

مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

نمایش تاریخ شمسی در asp.net به کمک Extension Method

برای این کار فقط کافی است یک متد به کلاس DateTime دات نت اضافه  (الحاق) نماییم :


بنابراین دیگه نیاز نیست که نگران نمایش تاریخ شمسی توی پروژه هاتون باشین.

فقط کافیه که :


این مورد در زمان استفاده از  Entity Framework خیلی بکارتون میاد ، وقتی که می خوایم لیستی از اطلاعات رو به همراه تاریخ شمسی نمایش بدیم.

مثلا:


ملاحظه می کنید که با کمک Entity Framework  و  Extension Method به چه سادگی توانستیم اطلاعات اشخاص را به همراه تاریخ عضویت آنها (بصورت شمسی) توی پروژمون نمایش بدیم.

موفق باشید.

نوشته شده در تاریخ جمعه 27 تیر 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش Entity Framework، آموزش سی شارپ،     | نظرات()


آموزش استفاده از ادیتور متن ckeditor در پروژه های asp.net

با سلام،

آقا مسعود درباره استفاده از ادیتور قدرتمند و محبوب ckeditor توی پروژه asp.net سوال پرسیده بودند که آموزشش رو اینجا قرار میدم که بقیه دوستان هم استفاده کنن.

برای افزودن ckeditor به پروژه asp.net ابتدا باید فایل های اونو از لینک زیر دانلود کنین.

دانلود فایل های ckeditor

رمز فایل: NetNic.ir

لینک بالا شامل سه تا فایل است که باید اونارو توی پوشه Bin پروژتون بریزین و یک پوشه با نام ckeditor هم داره که باید دقیقا خود پوشه رو با همون نام توی روت سایتتون (پروژه asp.net تون) بریزین.

مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

در پایان توی صفحه ای که قراره ckeditor استفاده بشه ، ابتدا دایرکتیو زیر رو به بالای صفحتون (توی بخش design یا همون فایل aspx. ) اضافه می کنین.


سپس کد زیر رو در محل مورد نظر قرار بدین.


به همین سادگی !
موفق باشید.

نوشته شده در تاریخ پنجشنبه 26 تیر 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET،     | نظرات()


آموزش استفاده از رپیرترهای تو در تو (رپیتر تو رپیتر) _ بخش دوم

سلام، طاعات و عبادات همتون قبول باشه،
بعد از مدت ها فرصتی پیش اومد که با آموزشی جدید در خدمت شما باشم.
در آموزش قبلی (آموزش استفاده از رپیرترهای تو در تو (رپیتر تو رپیتر) _ بخش اول) روش های پر کردن رپیتر های تو در تو رو بیان کردم، امروز می خوام کد ها رو بصورت عملی بزنیم.
خیلی وقت بود که قول این آموزش رو داده بودم ولی درگیر پروژه هام بودم و فرصت نمیشد ... امروز فرصتی پیش اومد که به قولم عمل کنم

خوب ابتدا باید 2 عدد رپیتر بصورت زیر درون صفحمون قرار بدیم.
دقت کنین که یک رپیتر در داخل رپیتر دیگر نیاز داریم.


سپس یک تابع می نویسیم که رپیتر Person رو پر کنه و اونو توی Page_load صفحه فراخونی می کنیم:


سپس یک تابع دیگر می نویسیم که آی دی شخص را بگیرد و لیست تلفن های تماسش را در قالب DataTable تحویل دهد :


مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه

در پایان کافی است در رویداد ItemDataBound آی دی شخصی که داره دیتاش توی رپیتر لود میشه رو بدست بیاریم و سپس رپیتر داخلی (rptContact)  رو Find می کنیم و توسط تابغ دومی که در بالا نوشتیم اونو پر می کنیم.


توضیح اینکه رپیتر رویدادی با نام ItemDataBound دارد که قبل از بایند شدن اطلاعات هر سطر از رپیتر اجرا می شود که می توان بصورت بالا به اطلاعات بایند شده دسترسی داشت و رپیتر داخلی را پر نمود...

به همین راحتی

فایل پروژه asp.net رو می تونین از اینجا دانلود کنین

رمز فایل : netnic.ir


موفق باشید

نوشته شده در تاریخ جمعه 20 تیر 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET،     | نظرات()


آموزش آپلود همزمان چند فایل در asp.net به روشی کاملا حرفه ای

درون سایت های خیلی مواقع اتفاق می افته که نیاز است که کاربر بصورت همزمان چندین فایل رو آپلود کنه.
این مورد بالاخص در گالری تصاویر سایت ها خیلی اتفاق می افته ، بطوری که گاهی نیاز است که کاربر 5 تا فایل تصویر رو همزمان بتونه آپلود کنه.
همانطور که می دانید در asp.net برای آپلود فایل از کنترل فایل آپلود (FileUpload) استفاده میشه و برای مثال بالا نیاز است که 5 تا کنترل فایل آپلود (FileUpload) درون یک صفحه داشته باشیم.

مشکلی که در اینجا پیش میاد اینه که ممکنه که کاربر از این 5 تا کنترل ، چند عددش رو استفاده کنه ، یعنی ما 5 تا فایل آپلود داریم ولی یهو می بینی کاربر فقط توی 2 تاش فایل انتخاب می کنه و تو اون زمان نیاز به اپلود 5 تا فایل نداره.
برای همین باید در زمان کلیک روی دکمه "آپلود" (دکمه ای که توی صفحه برای ارسال اطلاعات به سرور گذاشته ایم) دونه دونه فایل اپلود هامونو چک کنیم و در صورتی که کاربر با فایل آپلود ، فایلی انتخاب کرده بود فایل رو روی هاست آپلود کنیم ...
مقالات آموزشی دانشجویی برنامه نویسی و الکترونیک و شبکه
برای این کار باید یه همچین کدی بنویسیم:


می بینید که حجم کد چقدر زیاده و بیشتر کدها هم تکراری است!
تازه این فقط برای آپلود همزمان 5 تا فایله ، اگر توی یه پروژه مشتری خواست که همزمان بتونه 10 تا فایل رو آپلود کنه چی ؟
اون موقع اگر بخواین به این روش کد بزنین ، باید یه خروار کد تکراری بنویسین که این یعنی زیاد شدن حجم کدهای سایت و صرف شدن کلی زمان و انرژی برای یه کار کوچیک !

باید خدمتتون عرض کنم که روش بالا خیلی مبتدی و قدیمی است و برنامه نویسان حرفه ای هیچوقت به این روش برنامه نمی نویسن!
نگران نباشید ، در ادامه مقاله به شما یاد میدم که چطوری بتونین امکان آپلود همزمان 1000 تا فایل رو هم با چند خط کد میسر کنید!


برای این کار باید به روش زیر کد بنویسید:


ملاحظه می نمایید که به همین راحتی ما بدون نیاز به آی دی کنترل های فایل آپلود و همچنین بدون نیاز به دانستن تعداد کنترل های فایل آپلودی که توی صفحه وجود داره ، و حتی بدون نیاز به چک کردن تک تک کنترل های فایل آپلود داخل صفحه که آیا فایلی بوسیله هر کدوم انتخاب شده یا نه ؛ بدون دردسر همه فایل های ارسال شده به سرور رو داخل یک متغیر (شیء) از نوع کلاس HttpFileCollection ریختیم و بعد با یک عدد حلقه for ساده ، تک تک فایل ها رو روی هاست آپلود کرده ایم.
به همین راحتی!
این کد چه برای آپلود یک فایل و چه برای اپلود همزمان 1000 تا فایل کاربرد داره و فقط کافیه که به تعداد نیازتون کنترل فایل آپلود داخل صفحتون قرار بدین و در رویداد کلیک دکمه فرمتون ، از کد بالا استفاده کنین.

فایل پروژه رو می تونین از اینجا دانلود کنین

رمز فایل: netnic.ir
امیدوارم که از این آموزش جانانه هم خوشتون اومده باشه و خلاصه کدهاتونو از این به بعد به این روش جدید بزنین و حالشو ببرین
به زودی با آموزش جالب دیگری در خدمت شما خواهم بود ، پس مرتب به من سربزنین تا آموزش های خوب نت نیک رو از دست ندین.
نظرات سازندتونو هم تو بخش نظرات بگین تا در جهت بهبود کیفیت سایت نت نیک استفاده کنمشون.
یا حق

این پست بروز شده است

نوشته شده در تاریخ جمعه 13 تیر 1393    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET،     | نظرات()