Получить имя действия с помощью 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 "

0 ответов

Другие вопросы по тегам