مقاله ASP.NET (ماهیت و ابزارها)

X
اگر این مطلب را مفید میدانید، لطفا برای حمایت از ما روی این دکمه کلیک کنید.

بنام خداوند بخشنده مهربان

همونطور که اطلاع دارید زبان طراحی اچ تی ام ال از جمله زبانهای طراحی سمت کلاینت هست که میشه با کمک این زبان  صفحات استاتیک وب رو طراحی نمود به مرور و با گذشت زمان فن آوری های متعددی روانه بازار شدند که پردازش رو سمت سرور و نه سمت کلاینت انجام میدادند که این باعث امنیت و جامعیت بیشتر و همچنین ساخت صفحات پویای وب و نیز نرم افزار های تحت وب شد.از جمله مشهور ترین این فن آوری ها میتوان به پی اچ پی و ای اس پی دات نت اشاره کرد .پی اچ پی به کمک زبانی که از زبان سی مشتق شده یک تکنولوژی قدرتمند در زمینه طراحی سایت به شمار میرود و از سایتهای معتبری که با پی اچ پی و جاوا طراحی شده اند میتوان به فیس بوک اشاره نمود ولی معمولا از پی اچ پی به عنوان یک تکنولوژی همه منظوره استفاده نمیشود بطوریکه معمولا نمیتوان سایت دولتی و یا پایگاه اطلاعات دولتی را یافت که با پی اچ پی طراحی شده باشد و این به خاطر عدم پشتیبانی از این تکنولوژی هست ولی از سوی دیگر پی اچ پی و جاوا علاوه بر قدرتمند بودن رایگان نیز هستند.پشتیبانی و ارائه خدمات بروز و بیشمار شرکت مایکروسافت خیلی از طراحان سایت را بر آن داشت که از تکنولوژی ای اس پی دات نت استفاده نمایند.مسئله ای که در ای اس پس هست اینه که شما قبل از آموزش این تکنولوژی نیاز دارید که یک زبان برنامه نویسی رو به همراه تکنیک های بانک اطلاعاتی و ای دی او دات نت فرا گرفته باشید یعنی دو پکیج آموزشی مجزا را باید از قبل آموخته باشید که هر کدام از این دو پکیج دارای عمقی عمیق ولی محدوده کمی هستند در حالیکه ای اس پی عمقی کم ولی محدوده بی نهایتی را دارست ولی برای آموزشی پی اچ پی تنها نیاز به یک پکیج پی اچ پی هست که بسیار ساده تر بوده و تمامی مطالب را تحت پوشش قرار میدهد.و نکته آخر اینکه طراحانی که بکمک ای اس پی فعالیت میکنند تنها طراح سایت نیستند بلکه میتوانند نرم افزارهای تحت ویندوز و تحت وب قدرتمندی را خلق و انتشار دهند و این به خاطر دانستن زبان پیشنیاز این تکنولوژی میباشد در حالیکه در پی اچ پی اینچنین نیست.علاوه بر اینکه شرکت مایکروسافت اخیرا ای اس پی دات نت ر نیز رایگان نموده است.در هر حال و با توجه به موارد یاد شده که چکیده ای از مزایای تکنولوژی ای اس پی دات نت هست تصمیم به آموختن این تکنولوزی به همراه پیش نیاز های آن نموده و قصد دارم به یاری خدا تا سطوح بالاتر این مبحث را ادامه دهم.بعد از مبحث انتخاب تکنولوژی اگر صرفا قصد ارائه پروژه باشد که نیاز به چیز دیگری نیست و فقط باید شروع به کد نویسی در محیط ویژوال استدیونمود اما اگر قصد این باشد که پروژه نمود واقعی پیدا کرده و به مرور توسعه یابد نیاز به هاست و دومین میباشد که جزئیات اخذ این موارد را اگر مطلوب شما بود در فایل جداگانه ای به تفصیل خدمتتان ارائه میدهم لذا فقط به این بسنده میکنم که برای انتشار کل سایت نیاز به یک فضا و یک نام هست که میتوان این موارد را از ماهیانه 10 هزار تومان به بالا با توجه به امکانات سرور ارائه دهنده این خدمات تهیه نمود.

طراحی سایت  با ای اس پی دات نت در سه قسمت کاملا مجزا صورت میپذیرد:

  • 1-طراحی گرافیکی
  • 2-طراحی با تکنولوژی ای اس پی
  • 3-تکمیل طراحی با کد کردن اجرائی به کمک زبان برنامه نویسی

 

در مرحله اول که طراحی گرافیکی رو تشکیل میدهد حتما نیاز نیست که خود طراح سایت این مرحله را انجام دهد یعنی میتوان مرحله اول را از وظائف طراح سایت ندانست چرا که نیازمند دانش در مورد طراحی و مهارت در مورد نرم افزار هائی همچون فلاش-فتوشاپ-ایلستریتور-کورل و غیره میباشد که باز اگر حرفه ای به قضیه نگاه کنیم میتونیم اشخاصی رو ببینیم که فقط یکی از موارد بالا مثل فتو شاپ رو کار میکنند و ماهیانه بین 10 تا 20 میلیون تومان در ماه در آمد دارند این تمثیل به خاطر این است که یادآور شوم در علوم رایانه با توجه به گستردگی دامنه وسیع اطلاعاتی برای یک شخص امتیاز نیست بلکه اگر شخصی یک دامنه فوق العاده محدود رو  انتخاب کنه ولی مثل مته تا ته اون رو شکاف بده هم در حرفه و هم در تئوری تخصص و فوائد بیشتری رو شامل حال خودش خواهد نمود .البته به شخصه اعتقاد دارم دامنه خیلی هم نباید محدود باشه.در هر حال مرحله اول رو هم میتونه یک طراح جداگانه با توجه به ساختاری که طراح سایت در ذهن داره ایجاد کنه و هم اینکه خود برنامه نویس سایت اقدام به این کار کند.

 

  • 1-1 انتخاب مولفه های گرافیکی سایت

به منظور اینکه  سرعت اینترنت در اقصی نقاط جهان همواره با محدودیت هائی روبرو بوده و هست میبایست سعی شود که جهت آپلود و نمایش مولفه های گرافیکی مواردی انتخاب شوند که هم از نظر حجم قابل قبول بوده و هم این که نمایش گرافیکی زیبائی داشته باشند.برای برآوردن این مهم یکی از انتخاب ها این هست که از پسوند های کم حجم در   اشاره نمودgif-png-jpg محیط سایت استفاده شود از پسوند های معتبر و مفید در محیط اینترنت میتوان به

همچنین اگر قرار است فایل فلاشی برای وبسایت منظور شود باید دقت داشت که نهایت بهینه سازی ها در این باره لحاظ گردد.همچنین به منظور پائین آوردن حجم بک گراند سایت نیازی به آپلود نمودن یک فایل گرافیکی حجیم نیست بلکه میتوان با یک آیکون 20*20 که به اندازه بند اول انگشت سبابه هست و تکرا ر اون از حجم زیاد صفحه جلوگیری نمود.در نهایت با توجه به اینکه در هنگام کامپایل شدن و انتشار وبسایت کامپایلر سی شارپ و ای اس پی نهایت دقت را بمنظور بهینه سازی انجام میدهند میتوان انتظار داشت که دی ال ال تولید شده توسط کامپایلر به مراتب حجم کمتری از کار طراح سایت داشته و این خود باعث پائین آوردن حجم کلی سایت خواهد بود.

  • 2-1 انتخاب رنگ ها با توجه به روانشناسی رنگ ها

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

  • 2-1 کد های ای اس پی دات نت و مستر پیج

تکنولوژی ای اس پی از سال 2000 به بعد مورد استفاده قرار گرفت در سال 2002 شرکت مایکروسافت دست به اقدام جالبی زد و پلتفرم دات نت را ایجاد نمود و مبحث ای اس پی دات نت را عنوان نمود که بسیاری از اررورهای ای اس پی را جبران نموده بود.ای اس پی دات نت به جرات بهترین تکنولوژی حال حاضر پلت فرمهای سمت سرور هست به این معنی که کد نوشته شده در سرور و نه در کلاینت پردازش شده و سپس پاسخ به مرورگر ارسال و سپس در صفحه نمایش کلاینت مشاهده میشود .به ترتیب اگر بخواهیم مراحل اجرای کد های ای اس پی را دنبال کنیم ابتدا عمل پست بک انجام شده و سپس کلاینت ولیدیشن – پیج لود – سرور ولیدیشن و در نهایت عاملی که باعث پست بک شده است را خواهیم داشت.کدهای نوشته شده به زبان اچ تی ام ال هر چقدر هم که کامل باشند تنها در سمت کلاینت پردازش شده و این مشکل بزرگی در امنیت و مبحث سیستم های توزیعی که صرفا نیاز به پردازش سمت سرور دارند ایجاد میکند.

در ای اس پی ویژوال 2002 وقتی که یک صفحه وب سایت ایجاد میکردید هم کدهای ای اس پی و هم کدهای زبان کمکی که معمولا سی شارپ و یا وی بی هست را بصورت مختلط و در یک صفحه مشاهده میکردیم که این باعث میشد برنامه نویس اندکی گیج شده و خوانائی برنامه نیز پائین بیاید.این مطلب از نسخه 2 به بعد بصورت آپشنال درآمد بدین معنی که اگر برنامه نویس دوست داشت هر دو کد ای اس پی و سی شارپ را در یک صفحه شاهد بود در غیر اینصورت در هنگام ایجاد تیک تفکیک این دو کد را زده و سپس کدهای ای اس پی را در یک صفحه و کدهای سی شارپ یا وی بی را در صفحه دیگری شاهد بود .همچنین از ورژن 2 به بعد گزینه ای به نام مستر پیج به امکانات ای اس پی افزوده گشت.با مستر پیج شما میتوانید ابتدا یک صفحه کامل را که میخواهید در تمامی صفحات مشترک باشد را طراحی نموده و سپس بقیه صفحاتی را که ایجاد میکنید از مستر پیج خوراک دهی کنید بدین ترتیب بدون هیچ کار اضافی تمامی صفحات با یک نمای از قبل طراحی شده ایجاد میگردند و شما فقط میبایست کد مربوط به هر صفحه را بنویسید.در پروزه جاری فایل مستر پیج در فولدر دیزاین و مستر پیج قراردارد.

  • 2-2 یوزر کنترل ها

علاوه بر مستر پیج که توضیح آن گذشت گاهی شما نیاز دارید کنترل های مختلفی را در یک پنل قرار داده و نیاز دارید که این کنترل ها در صفحاتی به کار آید به طور مثال شما نیاز به منو ئی دارید که در اکثر صفحاتتون ثابت باشد ولی در برخی از صفحات میخواهید وجود نداشته باشد برای این منظور از یوزر کنترل ها استفاده میکنم .با کلیک راست روی نام پروژه و انتخاب آیتم جدید یوزر کنترل را انتخاب نموده و نامی متناسب با هدفمان در نظر گرفته و گزینه اوکی را انتخاب میکنم سپس در صفحه ای که باز میشود تمامی تغییرات را لحاظ نموده و تغییرات را ذخیره میکنیم حال در یک صفحه ای که وجود دارد و یا حتی در خود مستر پیج و در قسمت دیزاین با درگ و دراب کردن یوزر کنترل ساخته شده بر محلی که میخواهیم اصطلاحا یوزر کنترل را رجیستر نموده و مورد استفاده قرار میدهیم.

  • 2-3 سی اس اس

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

  • 2-4 کنترل های سمت سرور و سمت کلاینت

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

  • 2-5 جاوا اسکریپت

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

  • 2-6 ارورها

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

  • 2-7 فولدر های ویژه ای اس پی

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

  • 2-8 بانک اطلاعاتی و ای دی او دات نت

یکی از مهمترین مباحث در بحث برنامه نویسی تحت ویندوز و وب بانک های اطلاعاتی هستند چرا که در نهایت نیاز به فضائی جهت ذخیره سازی فایل ها داریم .اس کیو ال سرور یکی از بانکهای اطلاعاتی قوی موجود بوده که براحتی و بدون هیچ مشکلی با ای اس پی مچ بوده و کار میکند.توضیحات مربوط به بانک اطلاعاتی خارج از بحث پروژه هست ولی در حد مختصر عنوان میکنم که بعد از مشخص شدن نیازمندیها با توجه به اهداف پروژه بانک اطلاعاتی و سپس جداول و تنظیمات مربوط به بانک اطلاعاتی را در اس کیو ال سرور 2008 و یا اس کیو ال اکسپرس موجود در ویژوال استدیو ایجاد میکنیم .حال نیاز به یک پرووایدر هست تا بتوانیم برنامه کاربردی خود را با بانک اطلاعاتی ایجاد شده اتصال داده و شروع به کار کنیم بدنی منظور از پروایدر مفید ای دی او دات نت استفاده میکنیم.توضیح کوتاه اینکه در پروژه های تحت ویندوز معمولا از ای دی او دات نت نسخه 1.1 و در ای اس پی از نسخه 2.1 استفاده میشود که  در پروژه جاری نیز از نسخه 2.1 استفاده شده و ارتباط بین بانک اطلاعاتی و برنامه که همان وبسایت میباشد به کاملی برقرار شده .در بانک اطلاعاتی پروزه جاری جدول یوزر حرف اول را میزند چرا که ما نیاز مند این هستیم که اشخاصی را که در سایت ثبت نام میکنند تعیین هویت نموده و موارد هویتی را روی آنها اعمال کنیم.بانک اطلاعاتی پس از ایجاد حتما میبایستی در فولدر ای پی پی  آندرلاین دیتا قرار گیرد و کانکشن استرینگ ان نیز میبایست حتما در فایل متنی و مهم وب کانفیگ سایت که حاوی تمامی تنظیمات مهم وبسایت هست درج گردد.

  • 2-9 صفحات

بعد از ایجاد مولفه های یاد شده نیاز به یک پوشه بنام پیج میباشد که در آن تمامی صفحات سایت قرار میگیرد.صفحات موجود در پروژه جاری شامل – لاگین – رجیستر-لاگ اوت-ا باوت-کانتکت-که به ترتیب با نام های فارسی ورود-ثبت نام-خروج – درباره ما و تماس با ما شناخته شده و در تمامی وبسایت ها موجود هست .همچنین صفحات دلبخواهی مثل ویرایش پروفایل کاربر – حذف کاربر – ویرایش فایل های کاربر و غیره در این فولدر قرار میگیرد .چنانچه در ابتدای این بحث نیز یاد شد هر صفحه شامل دو قسمت مجزا ی کد های ای اس پی و کدهای سی شارپ هست که باعث میشه خوانائی برنامه بیشتر شود.با توجه به توضیحاتی که در حال نوشتن اون هستم اکنون بخش  نهم مرحله دوم را در حال نگاشتن هستم یعنی کدهای ای اس پی لذا به توضیح این قسمت از صفحات یاد شده میپردازم.

در صفحاتی که یاد شد و در قسمت کد های ای اس پی دات نت ما نیاز داریم کنترل هائی رو با با استفاده با کد نویسی و یا همونطور که قبلا ذکر شد با استفاده از تولباکس سمت چپ صفحه تولید و ارائه دهیم کنترل های یاد شده همچون مستر پیج – یوزر کنترل و دکمه ها –تکست باکس ها – هایپر لینک ها و غیره را بااستفاده و ترکیب کدهای اچ تی ام ال چه در قسمت کدنویسی و یا چه در قسمت دیزاین طراحی نموده ایم .بطور مثال برای طراحی صفحه ورود نیاز به سی اس اس از قبل نوشته شده – مستر پیج –یک یوزر کنترل منو – دو لیبل – دو تکست باکس – و دو دکمه هستیم که بعدا در قسمت سوم خواهیم دید که چگونه با استفاده از کدهای سی شارپ از این کنترل ها استفاده خواهیم نمود.

  • 2-10 فایل گلوبال ای اس ای ایکس

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

  • 2-11 ولیدشن یا اعتبار سنج ها

اعتبار سنج ها را میتوان در کنترل هائی اعمال نمود که مثل تکست باکس نیاز به بررسی هائی از جمله اینکه پسورد 6 کاراکتر کمتر نباشد و یا نام کاربری با قوانین شناسه ها تطابق داشته باشد.در پروژه جاری برای تمامی  کنترل  ها ی نیازمند اعتبار سنجی از جمله تکست باکس ها بحث اعتبار سنجی لحاظ شده است .بطور مثال اگر قصد داشته باشید بدون اینکه کلمه عبور و نام کاربری یا هر یک به تنهائی را وارد نکرده و کلید عبور را کلیک کنید پیغام خطا نمایش داده میشود.لازم به ذکر است که اعتبار سنجی ها در دومرحله کلاینت و سرور انجام میشود به این معنی که ابتدا در سمت کلاینت بررسی ها انجام شده و بعد از پست بک صفحه نیز یکبار دیگر بررسی ها ی اعتبار سنجی در سمت سرور صورت میپذیرد.

  • صفحات 1 -3

چنانکه در بخش دوم و کدهای ای اس پی دات نت اعلام شد از ورژن 2 به بعد ای اس پی دات نت امکان تفکیک کدهای ای اس پی و سی شارپ یا وی بی مهیا شد و این به خوانائی برنامه کمک شایانی نمود چنانکه امروزه 90 در صد از برنامه نویسان ای اس پی از روش تفکیک صفحات استفاده میکنند.در پروژه جاری نیز این دو بخش از هم تفکیک گردیده اند.

هر صفحه ای اس پی با پسوند ای اس پی ایکس شامل  یک زیر مجموعه به همان نام صفحه ولی با پسوند سی اس میباشد که کدهای برنامه به زبان مورد نظر در آن قرار میگیرد.ما از بان قدرتمند سی شارپ استفاده نموده ایم صفحات نام برده همچون ورود-ثبت نام –حذف کاربر- ویرایش پروفایل همه و همه شامل یک زیر مجموعه با پسوند سی اس هستند که با توجه به ماهیت برنامه و صفحه مورد نظر میبایست ویرایش و کد نویسی گردد.به طور مثال یکی از صفحات مثل ورود رو تشریح میکنیم و خواننده این مطلب رو جهت توضیحات بیشتر به خود کد های سی شارپ موجود در سی شارپ دعوت میکنیم.در صفحه ورودابتدا بررسی میشود که کاربری که در حال دیدن صفحه است لاگین نموده یا خیر .سپس بعد از این که کاربری که ثبت نام نموده نام کاربری و کلمه عبور خود را در سیستم وارد میکند و کلید ورود را میفشارد عملیات زیر انجام میشود:

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

ابتدا مبحث آتنتی کی شن و یا احراز هویت صورت میگیرد و برای کاربر سشن جدید ایجاد میگردد.سپس بررسی میشود که آیا کاربر فعال و یا غیر فعال است اگر غیر فعال باشد که به او پیغامی مبنی بر غیر فعال بودن داده میشود و اگر فعال باشد پیغام خوش آمد گوئی نمایش داده میشود.

  • 3-2  مستر پیج

همچون صفحات در مستر پیج  و در قسمت فایل های سی شارپ میتوان کدهائی مرتبط با پروژه درج نمود.در پروژه جاری و در قسمت فایل سی اس مستر پیج کدی درج نشده چرا که هدف استفاده ما از مستر پیج صرفا یک طراحی پیش فرض برای صفحات بوده است

  • 3-3 یوزر کنترل ها

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

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

  • 3-4 استفاده از کلاس های سی شارپ

همچون برنامه نویسی تحت وب میتوان کلاس هائی را در سطح پروژه ایجاد نمود و از آنها استفاده نمود.بطور مثال میتوان کلاسی به نام گلوبال ایجاد و کدهای مربوط به تغییر زبان وبسایت را در آن نوشت و سپس صفحات پروژه  از این کلاس ارث بری داشته باشند .به این ترتیب تمام صفحات  ارث بری شده میتوانند از مولفه های کلاس گلوبال استفاده نمایند

  • 3-5 فولدر های ویژه ای اس پی دات نت

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

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

  • 3-6 ارور ها

برای صفحات ارور نیز میتوان کد سی شارپ نوشت بطوریکه بعد از وقوع خطا کاربر به صفحه مناسبی ار جاع داده شود بطور مثال در پروژه جاری و ارور 403 مشخص شده اگر کاربر در آدرس بار خود کلمه دیفالت را اشتباه و به حالتهای مختلف تایپ کرد کد سی شارپ موجود این کلمه را اصلاح نموده و کاربر را به صفحه دیفالت راهنمائی کند

و یا در ارور 500 اگر کاربری که لاگین نکرده قصد وارد شدن به صفحه ای را داشت که نیاز به لاگین کردن دارد خود به خود به صفحه لاگین ارجاع داده شود

  • 3-7 بانک اطلاعاتی و دیتا ست

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

  • 3-8 ناوبری سایت

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

  • انتشار وبسایت

پس از آنکه به پروژه به اتمام رسید اگر قصد آنست که پروژه روی هاست واقعی و دامین اختصاصی قرار گیرد میبایست پروژه انتشار داده شود.ویژوال استدیو دو را ه اصلی برای انتشار وبسایت ارائه داده است:

اول اینکه پروژه را در قسمتی از هارد کامپیوتر انتشار داده و سپس فایل ها را از طریق اف تی پی به هاست منتقل نمائیم

دوم اینکه فایل ها را مستقیما به اف تی پی هاست منتقل کنیم

راه اول مرسوم تر و بهتر است .در هر حال با کلیک راست بروی نام پروژه و انتخاب پابلیش وبسایت آدرسی را بمنظور انتشار مشخص نموده و تائید میکنیم بعد از چند ثانیه سایت شما پابلیش میشود حال میبایست با یک نرم افزار اف تی پی مثل فایل زیلا و یا کیوت اف تی پی فایل های انتشار یافته را در هاست قرار دهید.

امیدوارم که این مطلب مورد توجه شما قرار گرفته باشد.

منبع :گروه آموزشی طلوع

دیدگاه‌ها

بوت استرپ

تصویر reza rostami

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

سلام

تصویر امیر چابک

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

در مورد آموزش های پیشرفته ام وی سی و وب فرم عرض میکنم داکیومنت های آموزشی تقریبا ایجاد شده و آماده میباشد فقط نیاز به ظبط ویدئو ها هست که منتظر آزاد شدن زمان برای انجام این کار هستیم .

بوت استرپ

تصویر reza rostami

سلام
ای کاش آموزش بوت استریپ رو به صورت پیشرفته در asp.net web form هم درست میکردین تا بیشتر بشه استفاده کرد
بازم مرسی از سایت خوبتون فقط دمو یادتون نره

سلام

تصویر امیر چابک

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