.NET: Is there a way to know which method the currently executing code is in? (for logging class)

I'm writing a logging class in C# and would like to add the method from which the log call was made. Doing this manually isn't too attractive. Is there a way to know which method the currently executing code is in?

Thanks in advance for your awesomeness...

Gregg

EDIT: Using MethodBase...

 System.Reflection.MethodBase thisMethod = System.Reflection.MethodBase.GetCurrentMethod();
 Console.WriteLine("This method is: " + thisMethod.Name);

Answers


Use MethodBase.GetCurrentMethod:

Returns a MethodBase object representing the currently executing method.

The MethodBase type has a Name property that is the name of the currently executing method as a string.

As a side note, perhaps you should look into existing logging frameworks so that you don't have to reinvent the wheel.


Need Your Help

ASP.NET MVC 2 site not loading after having moved to production. Setup appears to mimic QA fine. Thoughts?

asp.net asp.net-mvc asp.net-mvc-2

I've setup an ASP.NET MVC 2 site several times on our test system on IIS 6. I'm fine with having to use the .aspx extension on controllers. The Global.asax.cs file looks like this:

About UNIX Resources Network

Original, collect and organize Developers related documents, information and materials, contains jQuery, Html, CSS, MySQL, .NET, ASP.NET, SQL, objective-c, iPhone, Ruby on Rails, C, SQL Server, Ruby, Arrays, Regex, ASP.NET MVC, WPF, XML, Ajax, DataBase, and so on.