Pregunta ¿Cómo obtengo la URL de referencia en una acción ASP.NET MVC?


¿Cómo obtengo la URL de referencia en una acción ASP.NET MVC? Intento redireccionar a la página antes de llamar a una acción.


73
2017-09-24 11:49


origen


Respuestas:


Puedes usar Request.UrlReferrer para obtener la URL de referencia también si no le gusta acceder al Request.ServerVariables diccionario directamente.


126
2017-09-24 16:29



Request.ServerVariables["http_referer"]

Debería hacer.


21
2017-09-24 11:50



Puedes usar esto

filterContext.RequestContext.HttpContext.Request.UrlReferrer.AbsolutePath

6
2018-04-08 17:07



Para corregir el uso de la URL de referencia, debe pasarla a viewModel, inténtelo de la siguiente manera:

public interface IReferrer
{
    String Referrer { get; set; }
}

...

public static MvcHtmlString HiddenForReferrer<TModel>(this HtmlHelper<TModel> htmlHelper) where TModel : IReferrer
{
    var str = htmlHelper.HiddenFor(_ => _.Referrer);
    var referrer = HttpContext.Current.Request.UrlReferrer.AbsoluteUri;
    return new MvcHtmlString(str.ToHtmlString().Replace("value=\"\"", String.Format("value=\"{0}\"", referrer)));
}

...

@Html.HiddenForReferrer()

3
2017-12-23 07:35