사용자가 각기 다른 대상을 클릭 할 수있는 링크가 4 개 있지만 컨트롤러에있는 각 ActionResult에 몇 가지 검사를 실행하고 리디렉션하는 필터가 있습니다. 필요한 양식이있는 페이지 클릭 한 링크를 캡처하고 세션에 저장하는 방법을 알아 내려고 노력하고 있습니다. 사용자가 페이지를 방문 할 때 필터가 리디렉션 될 때 페이지를 다시 만들 수 있습니다./페이지로 이동하려고했습니다. 나는 Request.UrlReferrer
을 시도했으나 간단한 방법으로 사용자가 링크를 클릭했을 때의 페이지의 URL을 찾습니다.사용자가 어떤 링크를 ASP.Net MVC에서 클릭했는지 파악하기
컨트롤러 :
이[NetGalFilter]
public ActionResult Transactions()
{
return View();
}
필터 :
public class NetGalFilter : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
var Controller = filterContext.Controller as Sprague.RTS.WebUI.Controllers.BaseController;
if (HttpContext.Current.Session["HasConfirmed"] == null && Controller.TerminalUserData.IsNetGallonTerminal)
{
filterContext.Result = new RedirectToRouteResult(new RouteValueDictionary(new { controller = "DataEntry", action = "ConversionFactors" }));
}
base.OnActionExecuting(filterContext);
}
}
'Request.Url'는 필요한 것을 제공하지 않습니다. –
'Request.Url'은 현재 URL을 제공하므로 그렇지 않습니다. – Matthew