ASP.NET MVC: ¿cómo preservar los errores de ModelState en RedirectToAction?

Tengo los siguientes dos métodos de acción (simplificados para la pregunta):

[HttpGet]
public ActionResult Create(string uniqueUri)
{
   // get some stuff based on uniqueuri, set in ViewData.  
   return View();
}

[HttpPost]
public ActionResult Create(Review review)
{
   // validate review
   if (validatedOk)
   {
      return RedirectToAction("Details", new { postId = review.PostId});
   }  
   else
   {
      ModelState.AddModelError("ReviewErrors", "some error occured");
      return RedirectToAction("Create", new { uniqueUri = Request.RequestContext.RouteData.Values["uniqueUri"]});
   }   
}

Entonces, si la validación pasa, redirijo a otra página (confirmación).

Si ocurre un error, necesito mostrar la misma página con el error.

Si lo hagoreturn View(), se muestra el error, pero si lo hagoreturn RedirectToAction (como arriba), pierde los errores del modelo.

No estoy sorprendido por el problema, solo me pregunto cómo ustedes manejan esto.

Por supuesto, podría devolver la misma Vista en lugar de la redirección, pero tengo lógica en el método "Crear" que llena los datos de la vista, que tendría que duplicar.

¿Alguna sugerencia?

Respuestas a la pregunta(9)

Su respuesta a la pregunta