I have some code from my VB.NET 1.1 days that allowed me to dynamically check if Debug was enabled in web.config. I figured why re-invent the wheel in turning on/off logging
the following should work
var cfg=(System.Web.Configuration.CompilationSection) ConfigurationManager.GetSection("system.web/compilation");
if (cfg.Debug)
{
...
}
-Edit- I'm aware this doesn't specifically answer the question, as you asked for Web.Config - which immediately suggests a web.app, and is not decided at "run-time", but it does allow a good way to check if it's debug mode.
On another note, you'd not ideally interchanged between debug and release mode on the same app.. -End edit-
How about using conditional compilation??
http://msdn.microsoft.com/en-us/library/aa691099(v=vs.71).aspx
bool isDebuggingEnabled = false
#if debug
isDebuggingEnabled = true;
#endif
That surely would make the most sense, and doesn't require any specific references?
Just make sure the DEBUG
Constant is turned on in your project (See picture)
Use:
HttpContext.Current.IsDebuggingEnabled
This property actually looks at the web.config configuration setting. If you look at it using Reflector you will find that it gets the actual ConfigurationSection object using some internal classes.