Вместо этого вы можете рассмотреть возможность возврата настраиваемого общего представления об ошибках, но если вам действительно нужно это сделать, вы можете рассмотреть возможность использования отражения для вызова внутреннего метода. Первый может быть реализован в базовом контроллере, который станет основой для всех ваших контроллеров.
Первый пример:
public class BaseController : Controller
{
private ActionResult CreateErrorResult( string message )
{
ViewData["message"] = message;
...
return new View( "CustomError" );
}
}
Второй пример (если получение внутреннего атрибута с помощью отражения работает):
public static ActionResult RedirectToErrorAction(this Controller controller)
{
MethodInfo info = typeof(Controller).GetMethod( "RedirectToAction",
BindingFlags.NonPublic|BindingFlags.Instance,
null,
new Type[] { typeof(string), typeof(string) },
null );
return info.Invoke( controller, new object[] { "error", "support" } )
as ActionResult;
}