No se pudo encontrar la página de diseño "{ruta}"

Acabamos de recibir un nuevo servidor Windows 2008 R2 y estoy tratando de configurar un sitio MVC 3 en IIS 7.5 con Razor View Engine. Recibo un error extraño cuando accedo a la ruta predeterminada.

La página de diseño "~ / Views / Shared / _Layout.cshtml" no se pudo encontrar en la siguiente ruta: "~ / Views / Shared / _Layout.cshtml".

Esto es extraño porque configuré explícitamente el diseño desde/views/home/index.cshtml al igual que

@{
  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 elimino laLayout = "~/Views/Shared/_Layout.cshtml"; desde mi punto de vista, la página mostrará el contenido de/home/index.cshtml todo por sí mismo (sin ninguno de los códigos de_Layout.cshtml). También he intentado 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 cuando se ejecuta en el servidor web incorporado para Visual Studio.

Aquí está mi rastro de 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

Respuestas a la pregunta(4)

Su respuesta a la pregunta