Vistas compartidas en MVC: la vista (cadena, objeto) da un error de vista no encontrada

Tengo varios métodos de acción que pueden usar la misma vista. Intenté llamar a View con, por ejemplo

return View("~/views/contact/Emails", modelo);

La vista "Correos electrónicos" existe en el directorio especificado (Resharper subraya la URL), pero cuando ejecuto la aplicación aparece el error "La vista '~/vistas/contacto/Correos electrónicos' o su maestro no se encontró o no admite motor de vista las ubicaciones buscadas. Se buscaron las siguientes ubicaciones: ~/views/contact/Emails"

preguntado el 22 de mayo de 12 a las 19:05

1 Respuestas

Asumiendo que estás dentro ContactController, simplemente puede pasar el nombre de la vista.

return View("Emails", model);

MVC usa el enrutamiento para encontrar vistas, por lo que no le importa la ruta del archivo, solo el nombre (al menos en este punto de la canalización de solicitudes).

contestado el 22 de mayo de 12 a las 19:05

Eso hace el truco. Solo usar el nombre de la vista funciona. Lo que sugiere que la respuesta en stackoverflow.com/questions/5938837/… Está Mal. - jonathan allin

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.