Acabamos de obtener un nuevo servidor de Windows 2008 R2 y estoy tratando de configurar un sitio de MVC 3 en IIS 7.5 con el Razor View Engine. Recibo un error extraño cuando accedo a la ruta predeterminada.No se pudo encontrar la página de diseño "{path}"
El diseño de la página "~/Views/Shared/_Layout.cshtml" podría no se encuentran en la siguiente ruta: "~/views/Común/_Layout.cshtml".
Esto es extraño porque establece explícitamente la Disposición desde dentro /views/home/index.cshtml
así:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
estoy 100% seguro de que el /views/shared/_layout.cshtml
existe en el sistema de archivos. Aquí hay una captura de pantalla.
Si quito el Layout = "~/Views/Shared/_Layout.cshtml";
desde mi punto de vista, la página hará que el contenido de /home/index.cshtml
por sí mismo (sin ningún tipo de código de _Layout.cshtml
). También intenté configurar el diseño usando _ViewStart.cshtml
.
¿Alguien sabe por qué MVC no podría "encontrar" el archivo de diseño? Este sitio web funciona perfectamente bien cuando se ejecuta en el servidor web incorporado para Visual Studio.
Aquí está mi seguimiento de la pila:
[HttpException (0x80004005): The layout page "~/Views/Shared/_Layout.cshtml" could not be found at the following path: "~/Views/Shared/_Layout.cshtml".]
System.Web.WebPages.WebPageExecutingBase.NormalizeLayoutPagePath(String layoutPage) +204956
System.Web.WebPages.WebPageBase.PopContext() +150
System.Web.Mvc.ViewResultBase.ExecuteResult(ControllerContext context) +384
System.Web.Mvc.<>c__DisplayClass1c.<InvokeActionResultWithFilters>b__19() +33
System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, ResultExecutingContext preContext, Func`1 continuation) +784900
System.Web.Mvc.ControllerActionInvoker.InvokeActionResultWithFilters(ControllerContext controllerContext, IList`1 filters, ActionResult actionResult) +265
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName) +784976
System.Web.Mvc.Controller.ExecuteCore() +159
System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext) +335
System.Web.Mvc.<>c__DisplayClassb.<BeginProcessRequest>b__5() +62
System.Web.Mvc.Async.<>c__DisplayClass1.<MakeVoidDelegate>b__0() +20
System.Web.Mvc.<>c__DisplayClasse.<EndProcessRequest>b__d() +54
System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +453
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +371
Ding ding ding! Gracias. – jessegavin
lolz, no hay problema ;-) –
¿El mío no está buscando en absoluto la carpeta de vistas compartidas, ideas? – Maslow