¿Cómo obtengo la URL de referencia en una acción ASP.NET MVC? Estoy tratando de redirigir a la página antes de que llamaras a una acción.
asp.net-mvc
redirect
referrer
Ryall
fuente
fuente
Respuestas:
También puede utilizar
Request.UrlReferrer
para obtener la URL de referencia si no le gusta acceder alRequest.ServerVariables
diccionario directamente.fuente
Request.UrlReferrer
es en realidad el URI, pero desde allí puede obtener todo lo que necesita con respecto a la URL de referencia. (Más sobre URI vs URL: stackoverflow.com/questions/176264/… ).Request.ServerVariables["http_referer"]
Debería hacer.
fuente
Puedes usar esto
filterContext.RequestContext.HttpContext.Request.UrlReferrer.AbsolutePath
fuente
Puede pasar la URL de referencia a viewModel, en mi opinión, es mejor enfoque que compartir a través del estado, intente así:
public interface IReferrer { String Referrer { get; set; } }
...
public static MvcHtmlString HiddenForReferrer<TModel>(this HtmlHelper<TModel> htmlHelper) where TModel : IReferrer { var str = htmlHelper.HiddenFor(hh => hh.Referrer); var referrer = HttpContext.Current.Request.UrlReferrer.AbsoluteUri; return new MvcHtmlString(str.ToHtmlString().Replace("value=\"\"", String.Format("value=\"{0}\"", referrer))); }
...
@Html.HiddenForReferrer()
fuente