If you're the kind of developer who enjoys not using the debugger, and rather appreciates the use of logging statements, here's a solution path to consider.
When you're wanting to write things out to your page, you can use Response.Write. However if you're deep into a class that doesn't subclass Page you're sort of stuck. You may be able to find some solace with the trace feature, however that is a bit cumbersome and doesn't give you immediate results intermixed with the output of your page.
Give this a shot up in your page OnInit() method (or if you're doing things properly in your own Page super class).
System.Console.SetOut( Response.Output );
Now when you do System.Console.WriteLine("foobar"); you will see it in your browser.
This will choke if you try to access the Response Object before it is "available", so if you're wanting to do any logging in constructors (or anything before OnInit()), you're going to need to queue up your messages.






