Я пытаюсь переопределить OnException в Global.asax для обработки журнала ошибок и записи. Я не уверен, какая часть ошибки, я продолжаю получать ошибку «MyApp.MvcApplication.OnException (System.Web.Mvc.ExceptionContext)»: никакой подходящий метод не найден, чтобы переопределить «всякий раз, когда я перестраиваю свое решение.MVC Override OnException Ошибка: Не найдено подходящего метода для переопределения
это код, который я имею в Application_Start()
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
AuthConfig.RegisterAuth();
}
И это код, который я имею в OnException()
protected override void OnException(ExceptionContext context)
{
Exception ex = context.Exception;
if (!string.IsNullOrEmpty(ex.Message) ||
!string.IsNullOrEmpty(ex.Source.ToString()) ||
!string.IsNullOrEmpty(ex.StackTrace))
{
WriteLog(ex.Message.ToString(), ex.StackTrace.ToString(), ex.Source.ToString(), "0");
context.Result = new ViewResult
{
ViewName = String.Format("~/ErrorPage/ErrorPage?message={0}&stack={1}&source={2}", HttpUtility.UrlEncode(ex.Message), HttpUtility.UrlEncode(ex.StackTrace), HttpUtility.UrlEncode(ex.Source))
};
}
context.ExceptionHandled = true;
}
Функция WriteLog() тестируется работает в другом приложении , Я не думаю, что в этом есть проблема, и я даже пытался:
protected override void OnException(ExceptionContext context) {
Exception ex = context.Exception;
context.Result = new ViewResult
{
ViewName = "~/Shared/Error.cshtml";
};
context.ExceptionHandled = true;
}
Но ничего не работает. Ошибка остается там.
Как может возникнуть такая проблема и как ее исправить? Я прочитал много учебников об этом, я не думаю, что неправильно написано OnException().
Пожалуйста, помогите. Благодаря
После стольких дней чтения и борьбы я не нашел никаких ресурсов, рассказывающих мне, что OnException не существует в Global.asax, часть его, конечно же, слабая основа в ООП. Очень благодарен за эту полезную информацию, теперь ошибки больше нет, и я могу переопределить OnException для своих вещей. –
Я рад, что помог :) –