فردا روشن اسن به
آموزشASP.NET
صفحه نخست         تماس با مدیر         پست الکترونیک        RSS         ATOM
 
 
در این بخش  به بررسی عملیات مرتبط با فاز سوم ، خواهیم پرداخت  .

فاز سوم : اشکال زدائی برنامه  
اشکال زدائی یک برنامه از جمله مواردی است که هر برنامه نویس با آن سروکار خواهد داشت و لازم است برای تشخیص اشکال موجود در برنامه ( گرامری ، منطقی ، زمان اجراء ) از پتانسیل فوق  استفاده تا در زمان مطلوب اشکال موجود در برنامه تشخیص و برطرف گردد . ویژوال استودیو دات نت ، دارای امکانات متعددی در جهت اشکال زدائی برنامه های نوشته شده در محیط دات نت بوده و برنامه های وب نیز از این قاعده مستثنی نبوده و می توان از امکانات موجود در جهت رفع اشکال آنان استفاده نمود.در فاز سوم ایجاد یک برنامه وب ، با نحوه اشکال زدائی ( Debug  ) یک برنامه وب ASP.NET در ویژوال استودیو دات نت ، آشنا شده و به بررسی مواردی همچون تنظیم Break Points ، استفاده از Intellisense در دیباگ و نوشتن در پنجره خروجی ، خواهیم پرداخت

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

 مرحله اول : فعال نمودن امکان دیباگ در برنامه های وب  ، در این مرحله با نحوه فعال نمودن دیباگ در برنامه های وب ASP.NET با استفاده از فایل Web.Config آشنا خواهیم شد.

  • فعال نمودن پنجره  Solution Explorer  ( انتخاب گزینه Solution Explorer از طریق منوی View و یا فشردن  کلید های CTRL+ALT+L )

  • فعال نمودن فایل Web.Confing موجود در پنجره Solution Explorer 

  • از فایل Web.Config برای تعریف و مقداردهی پارامترهای لازم در ارتباط با پیکربندی برنامه استفاده می گردد . در این رابطه ، لازم است از وجود  دستورالعمل زیر در بخش  <system.web>   ، اطمینان حاصل گردد.

Verify the following line in  Web.Config

<compilation defaultLanguage="vb" debug="true" />

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

مرحله دوم : تنظیم برک پوینت ( Break Points ) : در این مرحله ، با نحوه ایجاد  Breakpoint  در یک برنامه وب آشنا خواهیم شد . Break Point ، نقاطی در برنامه هستند  که برنامه اجرای خود را تا آن نقطه انجام و با رسیدن به نقطه فوق ، متوقف شده و برنامه نویس می تواند مقادیر متغیرها ، خروجی و سایر موارد مرتبط با عملکرد برنامه را مشاهده و بر اساس مشاهدات فوق ، اقدام به اشکال زدائی برنامه نماید.

  • فعال نمودن فایل Login.aspx ( کلیک مضاعف بر روی فایل فوق از طریق Solution Explorer )

  • مشاهده صفحه Code Behind ( انتخاب View | Code ، فعال نمودن کلید F7 ، کلیک سمت راست برروی صفحه Login.aspx در پنجره Solution Explorer و انتخاب گزینه View Code

  • انتخاب کد اجرائی زیر در فایل Code Behind و  گزینه Insert BreakPoint ( کلیک سمت راست )

Set  breakpoint

 If (txtUserID.Text.Length >= 4 And txtPassword.Text.Length >= 4 And txtUserID.Text.StartsWith("S")) ...

  • اجرای برنامه ( Debug | Start و یا فعال نمودن کلید F5 )

  • درج  مقادیر مورد نظر در فیلدهای " نام " و  "رمز عبور " ( Srco و Srcopassword )

  • کلیک بر روی دکمه " ورود به سایت "

  • دیباگر در خط مشخص شده ( Break Point ) متوقف و آن را به رنگ زرد ، نمایش خواهد داد :

مرحله سوم : اشکال زدائی هوشمند  : در این مرحله با نحوه استفاده از اشکال زدائی هوشمندانه ، آشنا خواهیم شد.

  • حرکت موس و استقرار آن بر روی بخش Text مربوط به txtUserID.Text . در چنین حالتی یک Tool tip و با مقدار " Srco " ، نمایش داده می شود.

  • حرکت موس و استقرار آن بر روی بخش Length  مربوط به txtUserID.Text.Length  . در چنین حالتی یک Tool tip و با مقدار " 4 " ، نمایش داده می شود .

  • فعال نمودن پنجره Command ( انتخاب Debug | Windows | Immediate )

  • تایپ دستور " txtUserID ?"،  در ادامه تمامی تمامی خصلت های مربوطه نمایش خواهد داد .

  • انتخاب خصلت Text و فشردن کلید Enter . فشردن مجدد کلید Enter به منظور نمایش مقدار موجود در خصلت Text در کنترل txtUserID

مرحله چهارم : استفاده از Debug.write  : در این مرحله با نحوه استفاده از Debug.Write به منظور نوشتن خروجی در پنجره خروجی ، آشنا خواهیم شد .

  • مشاهده صفحه Code Behind ( انتخاب View | Code ، فعال نمودن کلید F7 ، کلیک سمت راست برروی صفحه Login.aspx در پنجره Solution Explorer و انتخاب گزینه View Code

  • افزودن کد زیر درابتدای صفحه Login.aspx.vb .

Add Line

imports System.Diagnostics

  • اضافه نمودن کد زیر به  انتهای متد btnSignin_Click

Add  lines

 Private Sub btnSignin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSignin.Click
         ...

Debug.WriteLine(txtUserID.Text)
Debug.WriteLine(txtPassword.Text)
Debug.Write(lblResult.Text)

End Sub

  • حذف Break point ایجا د شده در مرحله قبل ( Debug | Clear all break points  و یا فعال نمودن کلید های CTRL+SHIFT-F9 )

  • اجرای برنامه ( Debug | Start ، و یا فعال نمودن کلید F5 )

  • نمایش پنجره خروجی ( View | Other Windows | Output  و یا فعال نمودن کلیدهای CTRL+ALT+O )

  • سوئیچ به پنجره مرورگر

  • درج داده مورد نظر در فیلدهای "نام " و " رمز عبور "  "( Srco و Srcopassword )

  • کلیک بر روی دکمه " ورود به سایت "

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

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

  • انتخاب پروژه از طریق پنجره Solution Explorer
  • انتخاب Property Pages از طریق منوی View  
  • انتخاب Debug ، از طریق لیست Configuration موجود در جعبه محاوره ای Project> Property Pages > 
  • فعال نمودن فولدر Configuration Properties و انتخاب تنظیمات مورد نظری که قصد تغییر آنان را داریم .
  • ویرایش مقادیر مورد نظر در پنجره Properties

در زمان دیباگ نمودن یک برنامه وب ASP.NET برروی کامپیوتری که ویندوز 200 ( نسخه Server ) به عنوان Domain controller به همراه Service Pack 4 نصب شده باشد ، ممکن است با خطای زیر مواجه شویم :

علت اشکال فوق به Account استفاده شده برای اجرای ASP.NET Worker Process ( به صورت پیش فرض IWAM  بر روی Domain Controller می باشد ) مربوط می گردد که دارای مجوز "Impersonate a client after authentication" ، در local security policy نمی باشد .مشکل فوق ، در مواردی که Service Pack 4 ویندوز 2000 نصب و در ادامه ویژوال استودیو نصب شده باشد، محقق می گردد. در چنین وضعیتی  IWAM account دارای مجوز اشاره شده در local security policy نمی باشد . مجوز "Impersonate a client after authentication" ، ( به آن SeImpersonatePrivilege نیز گفته می شود ) یک تنظیم امنیتی جدید است که اولین مرتبه در Service pack 4 ویندوز 2000 ، ارائه شده است . برای حل مشکل فوق ، مراحل زیر را دنبال می نمائیم :

  •  فعال نمودن Domain Controller Security Policy ( از طریق Start|Programs|Administrative Tools )
  • کلیک بر روی Security Settings
  • کلیک بر روی Local Policies و در ادامه کلیک بر روی User Rights Assignment
  • از طریق پانل سمت راست ، Double Click بر روی Impersonate a client after authentication
  • در پنجره Security Policy Setting ، کلیک بر روی Define these policy settings 
  • فعال نمودن دکمه Add و در ادامه Browse
  • در پنجره Select Users or Groups ، انتخاب IWAM account ، کلیک بر روی دکمه Add و فشردن دکمه OK
  • فعال نمودن دکمه OK ( دو مرتبه )
  • برای بهنگام سازی سیاست امنیتی جدید تعریف شده ، دستور زیر را از طریق خط دستور تایپ و اجراء می نمائیم

Enforce an update of the computer policy

 secedit /refreshpolicy machine_policy /enforce

  • راه اندازی سرویس دهنده وب IIS ( تایپ دستور iisreset از طریق خط دستور )

نتایج  فاز سوم   :

  • فعال نمودن دیباگ در برنامه های وب
  • ایجاد Break point
  • اشکال زدائی هوشمند
  • استفاده از Debug.write
  • آشنائی با برخی اشکالات موجود در زمان فعال نمودن دیباگ

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

آموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.
آموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.netآموزشasp.





نوع مطلب :
برچسب ها :
لینک های مرتبط :




درباره وبلاگ

سلام من آرش کاکاوند دانشجوی رشته کامپیوتر هستم و ورود شما رابه دنیای aspخوش امدمیگم.حتما نظر بدین تا من کارم رو بهتر ادامه بدم

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








جستجو

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

                    
 
 
 
شبکه اجتماعی فارسی کلوب | Buy Website Traffic | Buy Targeted Website Traffic