What is the difference between Trace and Debug?
Answer Posted / krishpuneet
Trace and Debug - There are two main classes that deal with
tracing - Debug and Trace. They both work in a similar way -
the difference is that tracing from the Debug class only
works in builds that have the DEBUG symbol defined, whereas
tracing from the Trace class only works in builds that have
the TRACE symbol defined. Typically this means that you
should use System.Diagnostics.Trace.WriteLine for tracing
that you want to work in debug and release builds, and
System.Diagnostics.Debug.WriteLine for tracing that you
want to work only in debug builds.
Tracing is actually the process of collecting information
about the program's execution. Debugging is the process of
finding & fixing errors in our program. Tracing is the
ability of an application to generate information about its
own execution. The idea is that subsequent analysis of this
information may help us understand why a part of the
application is not behaving as it should and allow
identification of the source of the error.
We shall look at two different ways of implementing tracing
in .NET via the System.Web.TraceContext class via the
System.Diagnostics.Trace and System.Diagnostics.Debug
classes. Tracing can be thought of as a better alternative
to the response.writes we used to put in our classic ASP3.0
code to help debug pages.
If we set the Tracing attribute of the Page Directive to
True, then Tracing is enabled. The output is appended in
the web form output. Messeges can be displayed in the Trace
output using Trace.Warn & Trace.Write.
NOTE The only difference between Trace.Warn & Trace.Write
is that the former has output in red color. If the trace is
false, there is another way to enable tracing. This is done
through the application level. We can use the web.config
file and set the trace attribute to true. Here we can set
<trace enabled=false .../>
Note that the Page Directive Trace attribute has precedence
over th application level trace attribute of web.config.
While using application level tracing, we can view the
trace output in the trace.axd file of the project.
| Is This Answer Correct ? | 1 Yes | 1 No |
Post New Answer View All Answers
Is a dll file an executable?
Is razor a programming language?
How to prevent client side validation from the ASP.NET validation controls?
How do I upload a file from my ASP.NET page?
If 200 is for all successful operation then why do we have 201 response codes?
Why do I get error message "could not load type" whenever I browse to my asp.net web site?
Will the asp.net validators run in server side or client side?
What is redirecting behavior?
Explain in what order a destructors is called.
What are the advantages of asp.net mvc framework? : asp.net mvc
What are type/key pairs in client script registration? Can there be 2 scripts with the same type/key pair name?
What’s difference between “optimistic” and “pessimistic” locking?
List some of the important session state modes of asp.net.
Explain Features in ASP.NET
What are server side controls?