Как передать URL из фильтра действий в главный контроллер - PullRequest
0 голосов
/ 15 января 2019

В моем фильтре действий я получаю URL, который посетил пользователь через этот код.

MyActionFilter:

public class LogActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        String originalPath = new Uri(HttpContext.Current.Request.Url.AbsoluteUri).OriginalString;

    }
}

Мне нужно передать originalPath главному контроллеру, чтобы сохранить URL в db. Как передать URL из фильтра действий на главный контроллер?

Главный контроллер:

public class HomeController : Controller
{

    private readonly MyLogEntities _db = new MyLogEntities();
   [LogActionFilter]
    public ActionResult Index()
    {
        return View();
    }
    [LogActionFilter]
    public ActionResult About(int id)
    {
        ViewBag.Message = "Your application description page.";
        var usr = _db.UserLogs.SingleOrDefault(u => u.ID == id);
        var inputUser = ConfigurationManager.AppSettings["INPUT_USER"].ToString().ToLower();
        usr.Date = DateTime.Now;
        usr.url= originalPath; // need to get this from action filter
        usr.UserName = inputUser;
        _db.Logs.Add(usr);
        _db.Entry(usr).State = EntityState.Added;
        _db.SaveChanges();
        return View();
    }
    public ActionResult Contact()
    {
        ViewBag.Message = "Your contact page.";

        return View();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...