ASP.NET - Debugging

Advertisements


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:

Window Description
ImmediateDisplays variables and expressions.
Autos Displays all variables in the current and previous statements.
LocalsDisplays all variables in the current context.
Watch Displays up to four different sets of variables.
Call StackDisplays all methods in the call stack.
ThreadsDisplays and control threads.


Advertisements
Advertisements