private static void Write(String message, LogLevel level)
{
StackTrace trace = new StackTrace();
StackFrame frame = null;
frame = trace.GetFrame(2);
string caller = "";
if (frame != null && frame.GetMethod().DeclaringType != null)
{
caller = frame.GetMethod().DeclaringType.Name + ": ";
}
switch (level)
{
case LogLevel.Debug:
message = "DEBUG: " + message;
break;
case LogLevel.Info:
message = "INFO: " + message;
break;
case LogLevel.Warning:
message = "WARNING: " + message;
break;
case LogLevel.Error:
message = "ERROR: " + message;
break;
}
String text = caller + message;
Console.WriteLine(text);
_writeString.AppendLine(text);
}