Получить имя действия с помощью ControllerContext.RouteData
Я использую метод ниже, чтобы получить имя действия текущего выполняемого метода.
public async Task<IHttpActionResult> Post(PersonVM model)
{
try
{
var result = await _partyManager.Post(model);
_loggingService.LogInfo(ControllerContext.RouteData.Values["controller"]+ " : " +
ControllerContext.RouteData.Values["action"], "Person Added", null);
return Ok(result);
}
catch (Exception ex)
{
_loggingService.LogError(ex);
throw ExceptionStatusCode.ThrowHttpErrorResponseAndMessage(ex);
}
}
//ControllerContext.RouteData.Values["controller"]
Приведенный выше код выполняет и получает контроллер. Но при получении метода это дает мне исключение.
ControllerContext.RouteData.Values["action"]
'ControllerContext.RouteData.Values ["action"] "вызвала исключение типа" System.Collections.Generic.KeyNotFoundException "