Debugging, Tracing, and Profiling

To debug a .NET Framework application, the compiler and runtime environment must be configured to enable a debugger to attach to the application and to produce both symbols and line maps, if possible, for the application and its corresponding Microsoft intermediate language (MSIL). After a managed application has been debugged, it can be profiled to boost performance. Profiling evaluates and describes the lines of source code that generate the most frequently executed code, and how much time it takes to execute them.

.NET Framework applications are easily debugged by using Visual Studio, which handles many of the configuration details. If Visual Studio is not installed, you can examine and improve the performance of .NET Framework applications by using the debugging classes in the .NET Framework System.Diagnostics namespace. This namespace includes the Trace, Debug, and TraceSource classes for tracing execution flow, and the Process, EventLog, and PerformanceCounter classes for profiling code.

In This Section

  • Debugging Tools (.NET Framework)
    Includes tools that provide information about the internal common language runtime environment, help you find and fix problems in applications that target the common language runtime, and let you view assembly binds.

  • Debugging ASP.NET and AJAX Applications
    Provides prerequisites and instructions for how to debug an ASP.NET application during development or after deployment.