Расширение Ответ Дейла Рэгана , его пример для повторного использования, создает класс ApplicationController, который наследуется от Controller, и в свою очередь все остальные контроллеры наследуются от этого класса ApplicationController, а не Controller.
Пример:
public class MyCustomApplicationController : Controller {}
public class HomeController : MyCustomApplicationController {}
В вашем новом ApplicationController создайте свойство с именем ExecutingAction с этой подписью:
protected ActionDescriptor ExecutingAction { get; set; }
А затем в методе OnActionExecuting (из ответа Дейла Рагана) просто назначьте ActionDescriptor этому свойству, и вы сможете получить к нему доступ, когда вам это понадобится в любом из ваших контроллеров.
string currentActionName = this.ExecutingAction.ActionName;