Thursday, 30 January 2014

ASP.NET - Debugging

ASP.NET - Debugging

Debugging allows the developers to watch how the code works in a step-by-step manner, how the values of the variables change, how the objects are created and destroyed etc.
When the site is run for the first time, Visual Studio displays a prompt asking whether it should be enabled for debugging:
Debugging Info
When debugging is enabled, the following lines of codes are shown in the web.config:
<system.web>
  <compilation debug="true">
  <assemblies>
  ..............
  </assemblies>
  </compilation> 
</system.web>
The Debug toolbar provides all the tools available for debugging:
Debugging toolbar

Breakpoints:

Breakpoints specifies the runtime to run a specific line of code and then stop execution so that the code could be examined and perform various debugging jobs like, changing the value of the variables, step through the codes, moving in and out of functions and methods etc.
To set a breakpoint, right click on the code and choose insert break point. A red dot appears on the left margin and the line of code is highlighted:
Breaking Highlighted
Next when you run the code, you can observe the behavior of the code:
Breaking Highlighted2
At this stage, you can step through the code, observe the execution flow and examine the value of the variables, properties, objects etc.
You can modify the properties of the breakpoint from the Properties menu obtained by right clicking the breakpoint glyph:
Breaking Dropdown
The location dialog box shows the location of the file, line number and the character number of the selected code. The condition menu item allows you to enter a valid expression, which is evaluated when the program execution reaches the breakpoint:
Breaking Condition
The Hit Count menu item displays a dialog box that shows the number of times the break point has been executed.
Breaking Point
Clicking on any option presented by the drop down list will open an edit field where a target hit count is entered. This is particularly helpful in analyzing loop constructs in code.
Breaking Point2
The Filter menu item allows setting a filter for specifying machines, processes or threads or any combination, for which the breakpoint will be effective.
Breaking Filters
The When Hit menu item allows you to specify what to do when the break point is hit.
Breaking Point3

The Debug Windows:

Visual Studio provides the following debug windows รข€“ each of which shows some program information. The following table lists the windows:
WindowDescription
ImmediateDisplays variables and expressions.
AutosDisplays all variables in the current and previous statements.
LocalsDisplays all variables in the current context.
WatchDisplays up to four different sets of variables.
Call StackDisplays all methods in the call stack.
ThreadsDisplays and control threads.

0 comments:

Post a Comment