System.ArgumentNullException: значение не может быть нулевым. Имя параметра: URL
В приложении asp.net mvc я пытаюсь перенаправить на новый маршрут в Application_AuthenticateRequest. Если пользователь не аутентифицирован, то я перенаправляю на другой URL. Ниже приведен код,
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
var urlHelper = new UrlHelper(HttpContext.Current.Request.RequestContext);
var loginUrl = urlHelper.Action("Login", "Default");
Response.Redirect(loginUrl);
}
В этом коде выше метод urlHelper.Action возвращает пустую строку даже после регистрации маршрута в событии Application_Start.
Есть идеи, чтобы решить эту ошибку?
Ниже приведена конфигурация маршрута в Application_Start,
RouteTable.Routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { id = UrlParameter.Optional });