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

آموزش ارسال ایمیل از طریق asp.net

سلام
ارسال ایمیل از طریق asp.net - netnic.ir
ارسال ایمیل یکی از پر کاربرد ترین اعمالی است که طراحان وب مرتب باهاش سر و کار دارن.

ارسال ایمیل در "فراموشی کلمه عبور" ، برای ارسال خبرنامه ، ایمیل تبلیغاتی و .... کاربرد داره .

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


توجه : نسخه کتابخانه ارسال کننده ایمیل نت نیک به روز رسانی شد.

نسخه قبلی با هاست هایی که از SSL استفاده نمی کردند مشکل داشت که در این نسخه برطرف شده است.
دوستانی که قبلا این نسخه رو دانلود کردند ، حتما نسخه جدید رو دانلود و استفاده کنند.

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


مروری بر روش های واکشی اطلاعات از دیتابیس SQL با ADO.Net - بخش دوم

در آموزش قبلی ،  آموزش روش های واکشی اطلاعات از دیتابیس با ADO.Net  رو بیان کردم.

آموزش استفاده از روش های واکشی اطلاعات از دیتابیس با ADO.Net - netnic.ir
امروز می خوام نحوه استفاده از این روش ها رو بصورت عملی آموزش بدم.

همانطور که می دونین ، در روش ado.net برای گرفتن اطلاعات از دیتابیس مراحل زیر باید طی بشه :

  • ایجاد یک رشته اتصال : رشته اتصال اطلاعات لازم برای اتصال به دیتابیس رو توی خودش نکهداری می کنه
  • ایجاد یک شیء اتصال : شیء اتصال یک کلاس است که وظیفه برقراری ارتباط با دیتابیس رو به عهده داره
  • وصل شدن به دیتابیس
  • دریافت اطلاعات از دیتابیس با استفاده از یکی از روش هایی که در آموزش ado.net قبلی بیان کردم
  • قطع کردن ارتباط موجود با دیتابیس

شاید مراحل بالا یکم سخت به نظر برسه !

شاید هم یکم حرفام قلمبه و غیر قابل درک باشه !

ولی تا منو دارین نترسین 

همیشه گفتم و بازم میگم :

وقتی با تکنولوژی مایکروسافت دارین کار می کنین ، اصلا غم نخورین ، چون مایکروسافت همه کد های مورد نیاز رو قبلا براتون نوشته و فقط کافیه شما یک دستور 2 کلمه ای رو فراخونی کنین .... بقیه کارا خودش انجام میشه


خوب بریم سر درسمون ...

در ادامه مطلب برای هر روش یک نمونه کد گذاشتم و بصورت کامنت هم توضیحات لازم رو دادم....


نوشته شده در تاریخ شنبه 15 مهر 1391    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش ado.net،     | نظرات()


مروری بر روش های واکشی اطلاعات از دیتابیس SQL با ADO.Net - بخش اول

با سلام

دیدم دوستان مرتب درباره نحوه دریافت اطلاعات از دیتابیس بوسیله ado.net رو  می پرسن

اینجا آموزش کامل نحوه کار با ado.net رو میگم که مشکل همه برطرف بشه ...

بطور کلی در asp.net به سه صورت میشه با بانک اطلاعاتی sql ارتباط برقرار کرد و دیتا ازش گرفت و یا دیتا بهش داد.
آموزش روش های واکشی اطلاعات از دیتابیس با ADO.Net - netnic.ir
1- استفاده از کنترل های خود asp.net مثل SqlDataSource و ....
این روش برای تازه کاران بسیار مناسب است و برای سایت های کوچولو یا پروژه های دانشجویی خیلی خوب است.
ولی برای سایت های بزرگ بسیار کند می باشد و ارور ها رو هم نمیشه توش مدیریت کرد و تا یه مشکلی پیش بیاد ، کاربر با صفحه ارور asp.net مواجه میشه.
یک برناه نویس حرفه ای به خوبی می دونه که نمایش صفحه ارور asp.net در یک سایت بدین معنی است که اون سایت حرفه ای طراحی نشده و چه بسا بسیاری از اطلاعات مهم دیتابیس (مثل اسم جداول و ...) از طریق همین صفحه ارور به راحتی در دسترس هکران عزیز قرار می گیره.

نمونه پروژه انجام شده به این روش + توضیحات کامل رو می تونین از اینجا دانلود کنین :



2- استفاده از کد نویسی دستی بوسیله تکنولوژی ADO.Net

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

این روش خودش به دو صورت قابل استفاده است  :

الف) نوشتن کوئری های sql بصورت معمولی توی خود صفحات
این روش نیمه حرفه ای است و دارای امنیت و کارایی پایینی است

ب) استفاده از Store Procedure
(کد های SQL رو بصورت یک سری تابع توی خود SQL ذخیره می کنین و از توی صفحات شsp.net  فقط اسمشونو فراخونی می کنین و خروجی رو می گیرین و استفاده می کنین)

این روش بسیار حرفه ای و پر سرعت می باشد و امنیت خیلی خوبی هم داره

3- استفاده از تکنولوژی جدید Linq
این روش به تازگی از طرف مایکروسافت معرفی شده است.

این روش خودش به دو صورت قابل استفاده است :

الف) با کمک وایزاردهای خود ویژوال استودیو
(در ویژوال استودیو 2010 به بعد وجود دارد)

ب) کد نویسی دستی
این روش حجم کد نویسی بیشتری نسبت به ADO.Net دارد و تا این لحظه چاره ای برای داینامیک کردن کد نویسی هاش پیدا نشده است.


در ado.net و در روش کد نویسی دستی برای گرفتن خروجی کوئری های SQL از دیتابیس چند روش داریم :
(استفاده از روش های زیر هم با نوشتن کوئری میسر است و هم با استفاد هاز Store Proscedure)


1- با دیتاریدر (ExecuteReader)
>> برای گرفتن یک سطر مناسبه (یک شیء)

2- با دیتا آداپتر (DataAdapter.Fill)
>> برای گرفتن یه عالمه سطر مناسبه (لیستی از اشیاء) و یا یک سطر مناسبه (یک شیء)

3- بصورت اسکالار (ExecuteScalar)
>> برای گرفتن یک مقدار واحد مناسبه


در ادامه مطلب ، مزایا و معایب هر کدام از روش های ado.net رو بررسی می نماییم.

نوشته شده در تاریخ شنبه 15 مهر 1391    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش ado.net،     | نظرات()


آموزش ساخت عبارت میانبر در ویژوال استودیو

سلام
آموزش ساخت عبارت میانبر در ویژوال استودیو - netnic.ir
حتما شده که مثلا برای نوشتن یک پروپرتی ، تایپ کردین prop و بعد 2 با تب رو زدین ....

عبارت prop یک عبارت میانبر است.

خوب می دونستین که می تونین خودتون بی نهایت عبارت میانبر برای خودتون بسازین ؟


در آموزش بعدی به شما یاد میدم که چطوری یک عبارت مبانبر بسازین ...

مثلا من الان cw رو میزنم و بعد 2 بار تب رو میزنم و Console.WriteLine بطور کامل بصورت خودکار توسط ویژوال استودیو نوشته میشه ....

پس با ما باشید ...

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


کتابخانه NetNicCapchaPro ایجاد تصاویر امنیتی کپچا حاوی متن اتفاقی (CAPTCHA)

با سلام
بازم اومدن با دست پر ...
کتابخانه NetNicCapchaPro ایجاد تصاویر امنیتی حاوی متن اتفاقی (CAPTCHA) - netnic.ir


یکی از معضلات همه برنامه نویسان وب ، جلوگیری از حملات Brute Force است.

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

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


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

برای تشخیص انسان از روبات میشه از چند روش استفاده کرد :

  1. قرار دادن پرسش امنیتی در صفحات ثبت نام و لاگین
  2. قرار دادن تصویر امنیتی در صفحات ثبت نام و لاگین

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

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

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


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

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

کتابخونه دست سازی که امروز می خوام بهتون معرفی کنم ، NetNicCapchaPro نام داره و همانطور که از اسمش مشخص است توسط سایت نت نیک (خودم) ساخته شده و نسخه پیشرفته تر کتابخونه NetNicCapcha (کتابخونه قبلی) است

امکانات جدید این کتابخونه نسبت به نسخه قبلی :

- در این کتابخونه تصویر بر روی رم ایجاد میشه و بعد به کاربر نمایش داده میشه و بعد از روی رم حذف میشه تا حتی کسی نتونه اطلاعات عکس رو از روی رم بخونه :)

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

- در این کتابخونه شما می تونید با ترسیم خطوط در عکستون ، داخل تصویرتون یکم نویز اضافه کنین تا خوندنش توسط روبات ها غیر ممکن تر بشه ...
(روبات های پیشرفته امکان خواندن تصاویر امنیتی رو دارا می باشند)

- برای امنیت بیشتر شما می تونین یک لیست از رنگ های مورد نظرتون به کتابخونه بدین تا حتی رنگ خطوط نویر داخل تصویرتون هم بصورت رندوم از لیست شما انتخاب بشه

- تعداد خطوط بین 2 و 4 خط بصورت رندوم انتخاب میشه

- x و y خطوط هم بصورت رندوم انتخاب میشه


هر چیزی که میشد بصورت داینامیک و رندوم باشه رو من تو این کتابخونه در نظر گرفتم تا تصویر شما دارای حداکثر امنیت باشه :)

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


آموزش ساخت تصاویر امنیتی کپچا حاوی متن اتفاقی (CAPTCHA) در asp.net | نسخه یک

با سلام
آموزش ساخت تصاویر امنیتی حاوی متن اتفاقی (CAPTCHA) در asp.net - netnic.ir
برای این ساعت از سایت نت نیک ،  آموزش ساخت capcha در asp.net رو در نظر گرفتم.


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

ساخت تصویر capcha در asp.net نیاز به کلی کد نویسی سی شارپ داره ؛ برای ساخت capcha در asp.net ابتدا باید یک سری کاراکتر رندوم ایجاد کنین ، سپس اونها رو به عکس تبدیل کنین .
برای اینکه احتمال خوندن تصویر capcha  توسط روبات ها رو به حداقل برسونیم ، بهتره که کاراکترهامونو بصورت رندوم بچرخونیم و در پایان هم چند تا خط با رنگ های رندوم روی تصویرمون ترسیم کنیم.

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

نوشته شده در تاریخ سه شنبه 24 مرداد 1391    | توسط: ح.م    | طبقه بندی: آموزش ASP.NET، آموزش امنیت در asp.net، پروژه ها و ساخته های خودم،     | نظرات()


آموزش تغییر آدرس صفحات با url rewriting در asp.net بخش دوم

با سلام خدمت دوستان برنامه نویس خودم.

برای این ساعت از سایت نت نیک بخش دوم url rewriting در asp.net رو می خوام آموزش بدم.

آموزش url rewriting در asp.net بخش دوم

در بخش اول آموزش تغییر آدرس صفحات با url rewriting در asp.net  روش تغییر آدرس صفحات بصورت کدنویسی دستی رو آموزش دادم.


در این آموزش ، تغییر آدرس صفحات در asp.net بصورت داینامیک رو آموزش خواهم داد.


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

در روش داینامیک دیگر نیاز به ساعت ها کد نویسی نخواهید داشت و به راحتی می توانید در پروژه های بزرگ ، از Url rewriting استفاده نمایید.


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


آموزش کد کردن اطلاعات حساس در asp.net بوسیله الگوریتم MD5

برای این ساعت از سایت نت نیک ، کد کردن اطلاعات حساس در asp.net بوسیله الگوریتم MD5 رو می خوام آموزش بدم
آموزش کد کردن اطلاعات حساس در asp.net بوسیله الگوریتم MD5
یکی از دغدغه های برنامه نویسان وب ، حفاظت از اطلاعات حساس کابران می باشد.

حال این اطلاعات می تواند یوزرنیم ، پسورد و یا شماره حساب کاربران  شما باشد .

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

در ادامه بوسیله این الگوریتم یک کلاس می سازیم که هر مقدار رشته ای با بوسیله MD5 کد کند و کد را به ما تحویل دهد:


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