2014-11-27 2 views
0

Я пытаюсь перенаправить пользователя на предыдущую страницу после входа в систему. Я попытался использовать параметр returnUrl, но по какой-то причине он всегда равен нулю.ReturnUrl всегда имеет значение null после входа в систему

Вот мой код:

Войти метод:

public ActionResult Login(string returnUrl) 
{ 

    ViewBag.returnUrl = returnUrl; 
    return View(); 
} 

От в представлении:

@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "loginForm", returnUrl = ViewBag.returnUrl })) 

Кто-то есть идея

ответ

1

вы используете неправильную перегрузку BeginForm и атрибут атрибута для returnUrl rat ей, чем стоимость маршрута. Если вам нужно сделать атрибут id для формы (кажется ненужным), то

@using (Html.BeginForm(null, null, new { ReturnUrl = ViewBag.ReturnUrl }, FormMethod.Post, new { id = "loginForm" })) 

иначе, только

@using (Html.BeginForm(new { ReturnUrl = ViewBag.ReturnUrl })) 
+0

Спасибо большое, это решить мою проблему! – Bouss

+0

Кстати, я использую id для формы, потому что я отправляю его через jQuery – Bouss

+1

ОК, но, предполагая, что он единственный, вы всегда можете использовать '$ ('form') ....' –

Смежные вопросы