Is there a method from the http context class to get the current controller name?
Yes, you can do something like this
HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString();
If you are in view mode, you can do:
ViewContext.RouteData.Values["Controller"]