Si tengo un controlador y quiero devolver una vista en función de a qué va mi lógica condicional, ¿es posible? Tengo diferentes tipos de modelos que quiero insertar en una vista DEPENDIENDO de mi lógica condicional (declaraciones if) ¿Puedo hacer esto? y cómo haría estoDevuelve diferentes vistas en un controlador
6
A
Respuesta
16
Sure, return View() acepta un nombre de vista como su primer parámetro. Solo especifica una vista diferente.
Si tiene diferentes modelos que entran en la misma vista, intente fusionarlos, cree un modelo de contenedor (una propiedad por tipo de modelo y luego una enumeración para que las vistas sepan qué renderizar), use dinámico como el modelo en la vista, o crear una vista por modelo.
La primera y la última sería mi opción preferida, pero depende de los detalles.
2
Se puede hacer algo así en su controlador (este es un ejemplo mirando si se autheticated un usuario)
if (Request.IsAuthenticated)
return View("View1", new AuthenticatedViewModel(myValues1));
else
return View("View2", new AnonymousViewModel(myValues2));
Cuestiones relacionadas
- 1. Devolver diferentes vistas desde el controlador MVC
- 2. Un controlador, diferentes vistas para usuarios normales y administradores
- 3. ExtJS 4 - cómo llamar a la función desde un controlador determinado en diferentes vistas
- 4. String.GetHashCode() devuelve valores diferentes
- 5. manejo de notificaciones automáticas a diferentes vistas
- 6. ¿Hay alguna manera de tener diferentes vistas en un NSCollectionView?
- 7. usando diferentes diseños para un controlador completo
- 8. ASP.NET MVC: ¿Es una mala idea devolver diferentes vistas desde una sola acción del controlador?
- 9. Controlador MVC3 que devuelve JsonFile
- 10. juego 2 paquetes diferentes para vistas
- 11. ASP.NET MVC una ruta, dos vistas diferentes
- 12. ¿Devuelve XML de la acción de un controlador en ActionResult?
- 13. Android: EfficientAdapter con dos vistas diferentes
- 14. Vistas simples de ASP.NET MVC sin escribir un controlador
- 15. Mismo nombre de controlador en diferentes áreas
- 16. Rieles 3: diferentes vistas para cada modelo
- 17. android listview diferentes vistas para cada elemento
- 18. ¿Volver a calcular ScrollView en diferentes vistas de ViewFlipper?
- 19. Variables de controlador de Grails no visibles en las vistas
- 20. Cómo formatear un número en un controlador ruby on rails, number_with_delimiter solo funciona en las vistas
- 21. ABAddressBookCopyArrayOfAllPeople y ABAddressBookGetPersonCount devuelve diferentes tamaños
- 22. Multiple UICollectionView en un controlador
- 23. redirigir a diferentes controlador maravilloso/griales
- 24. cómo utilizar el modelo en diferentes controlador en RoR
- 25. JavaScript MVC: cómo notifican las vistas al controlador
- 26. ¿Por qué Encoding.Default.GetBytes() devuelve resultados diferentes en VB.NET y C#?
- 27. ¿Cómo se combina UIScrollview con UIPagecontrol para mostrar diferentes vistas?
- 28. T4MVC y nombres de controlador duplicados en diferentes áreas
- 29. i18n error: controlador y plantillas utiliza diferentes lenguajes implícitos
- 30. ¿Cómo puedo cambiar las vistas mediante programación en un controlador de vista? (Xcode, iPhone)