Comment obtenir l'URL du référent dans une action ASP.NET MVC ? J'essaie de rediriger vers la page avant d'appeler une action.
C'est exactement ce dont j'ai besoin. Merci, mon frère !
Comment obtenir l'URL du référent dans une action ASP.NET MVC ? J'essaie de rediriger vers la page avant d'appeler une action.
Request.UrlReferrer
est en fait l'URI mais à partir de là, vous pouvez obtenir tout ce dont vous avez besoin concernant l'URL du référent. (Plus d'informations sur URI et URL : stackoverflow.com/questions/176264/ ).
Vous pouvez passer l'url du référent au viewModel, à mon avis c'est une meilleure approche que le partage via l'état, essayez ainsi :
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()
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
5 votes
N'oubliez pas que tous les agents utilisateurs (c'est-à-dire les navigateurs) n'envoient pas les informations de référence, et que certains peuvent même les falsifier.