Why does System.Diagnostics.Debug.WriteLine not work in Visual Studio 2010 C#?

Check following items -

  1. DEBUG mode is selected while debugging
  2. Debug option is selected in Output window - enter image description here
  3. See if breakpoint is hitting Debug.WriteLine in code
  4. Insert Debug.AutoFlush = true at the beginning of code
  5. Try checking if Platform for the solution is set to Any CPU and not x86 (or x64).
  6. Goto Project Properties--> Web - In the Debugger section, check the the ASP.NET option

Reference for Point #5 (Read the comment, It worked for that guy)


In your app.config file, make sure you don't have a <clear/> element in your trace listeners.

You will effectively be clearing the list of trace listeners, including the default trace listener used for Debug statements.

Here's what this would look like in your app.config file:

<system.diagnostics>
    <trace>
      <listeners>
          <!-- This next line is the troublemaker. If it is there delete it-->
          <clear/>
      </listeners>
    </trace>
  </system.diagnostics>

For me, I needed to do this to solve the problem:

1. Open the project's property page
2. Under Build tab, check "Define DEBUG constant" and "Define Trace constant"

Voila!


For me, this solved the problem:

System.Diagnostics.Trace.WriteLine("whatever");

(using Trace instead of Debug)