Mam zainicjowaną metodę w mojej klasie kontrolera podstawowego, która jest wywoływana za każdym razem, gdy wykonywana jest jakakolwiek metoda działania. Przy każdej metodzie działania chcę sprawdzić moją sesję i jeśli jest ona pusta, powinna przekierować na stronę logowania.Metoda przekierowania do działania z kontrolera podstawowego
public class BaseController : Controller
{
protected IDataRepository _appData = new DataRepository();
protected override void Initialize(RequestContext requestContext)
{
base.Initialize(requestContext);
if (SessionFactory.CurrentAdminUser == null)
{
RedirectToLogin();
}
}
}
public ActionResult RedirectToLogin()
{
return RedirectToAction("AdminLogin", "Admin");
}
to wywołanie tej metody, ale nie przekierowanie do administratora metody logowania i utrzymuje na wykonanie i metodę połączenia, która jest w przepływie więc błąd przyjdzie.
W skrócie chcę sprawdzić za każdym razem, gdy moja sesja aplikacji uzyska wartość zerową, powinna zmienić stronę logowania i nie jest wygodna, aby sprawdzić wszystkie metody. Proszę zasugerować mi dobry sposób.
Dziękuję za radę, ale nie mogłem użyć Url.Action. Czy możesz doradzić, który zespół muszę odnieść do tego Url.Action? – Silvia
@Silvia, zakładam, że to 'System.Web.Mvc' – haim770