Ajax redirecciona a la página en lugar de actualizar el objetivo
Estoy utilizando una vista parcial para iniciar sesión y me gustaría redirigir al usuario a una nueva página si tengo éxito y mostrar los errores de validación en la vista parcial si el modelo no es válido. El objetivo ajax se está actualizando y el éxito o el fracaso. Si el modelo es válido, muestra la nueva página completa en el objetivo de actualización, pero quiero que se redirija a la nueva página. He intentado Redirigir y Redirigir a la Acción pero no está obteniendo los resultados deseados. Cualquier idea sobre lo que puedo conseguir para obtener una actualización ajax para redirigir a una nueva página, no actualizar el objetivo. Además, avíseme si estoy usando el enfoque equivocado.
Código de vista parcial:
<% using (Ajax.BeginForm(
"LogOn",
null,
new AjaxOptions {
HttpMethod = "POST",
UpdateTargetId = "SignInForm"
},
new {
id = "SignInForm", ReturnUrl = Request.QueryString["ReturnUrl"]
})) { %>
<<Page HTML Controls>>
<input type="submit" value="Log On" />
<% } %>
Aquí está el código del controlador relevante:
public ActionResult Logon(LogOnModel model,string returnUrl)
{
if (ModelState.IsValid)
{
//Login Logic Code
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "App");
}
}
// If we got this far, something failed, redisplay form
if (Request.IsAjaxRequest())
return PartialView("LogOnControl");
return View(model);
}