Я работаю над приложением asp.net MVC 3. Одна домашняя страница приложения, есть несколько ссылок, которые перенаправляют на страницу входа, например:
<a href="Home/Login?returnUrl=/Disputes/Index"> Disputes </a>
метод действия входа в систему выглядит так:
public ActionResult Login()
{
return view();
}
при входе в систему У меня есть частичный вид, подобный этому:
@Html.Partial("_LogOn", new LogOnModel { Type = LogOnTypeEnum.Obligor })
и _LogOn частичное выглядит так:
вверху это выглядит так:
@{
string retUrl = "";
if (ViewContext.HttpContext.Request.UrlReferrer != null)
{
retUrl =
ViewContext.HttpContext.Request.UrlReferrer.PathAndQuery;
}
}
и форма выглядит так:
@using (Html.BeginForm("LogOn", "Account", FormMethod.Post, new { autocomplete = "off", id = "frmLogin", Type = 2, model = this.Model, returnUrl = Request.QueryString["ReturnUrl"] }))
и, наконец, метод входа в систему контроллера аккаунта:
public ActionResult LogOn(LogOnModel model, string returnUrl)
{
// I want to redirect to localhost:2304//myapp/returnurl but returnurl is empty
}
Я следую этому примеру (он не использует частичное представление, как я использую)
http://visualstudiounleashed.com/mikesnell/post/2011/08/16/Using-the-ASPNET-MVC-3-Logon-returnUrl-Parameter.aspx