Hola,Pase objeto complejo con redirección en ASP.NET MVC?
que tienen una acción que tiene este aspecto:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Register(AdRegister adRegister, IEnumerable<HttpPostedFileBase> files)
El AdRegister es una clase compleja y necesito pasar esto en un método de redirección más abajo en la acción de Registro, de esta manera:
return this.RedirectToAction("Validate", adRegister);
La acción Validar se parece a esto:
public ActionResult Validate(AdRegister adRegister)
Sé que puedo pasar parámetros simples, pero en este caso se trata de un objeto complejo. Este ejemplo no funciona, las propiedades del adRegister serán nulas.
¿Esto es posible y, de ser así, cómo?
BestRegards
Más información: acción Registro tomará la adRegister y hacer magia som en él, entonces serán enviados a la acción Validar. La acción Validar devolverá una página de validación al usuario. Cuando el usuario presiona el botón de otorgar, se completará el formulario de inscripción y se enviará a la publicación de vValidate donde se guardará. He buscado colocar el adRegister en el caché o la base de datos de forma temporal, pero será mejor si pudiera pasarlo a la siguiente acción.
De acuerdo, entonces no es posible enviar el objeto complejo directamente a la acción.El problema con TempData podría ser si el usuario actualiza la página. Maby la mejor manera es almacenarlo en la base de datos y luego ejecutar la limpieza con un intervalo establecido (El usuario podría llegar a la etapa 2 y luego abortar, de ser así, los datos seguirán estando en la base de datos). – Banshee
Si abortan en todas las sesiones, creo que la base de datos es mejor ... –
@SnowJim, sí, tiene razón acerca de que el usuario actualice la página. Es por eso que no te recomendaría que lo uses. La mejor manera es almacenarlo en la base de datos o sesión. –