2010-09-29 23 views
5

Acabo de recibir una nueva computadora de escritorio con Windows 7 Pro como sistema operativo. Instalé Visual Studio 2008 en esta nueva computadora e intenté abrir una solución ASP.NET 3.5 previamente existente que se mostraba perfectamente bien en mi computadora anterior (esta computadora anterior usaba el sistema operativo Windows XP, IIS6 e IE7). Sin embargo, en Windows 7/IE8, que estoy recibiendo el siguiente error:Error: "El archivo '/MasterPages/MainMaster.master' no existe." (Sí, ¡este archivo existe!)

Server Error in '/' Application.


Parser Error Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.

Parser Error Message: The file '/MasterPages/MainMaster.master' does not exist.

Source Error:

Line 1: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="default.aspx.cs" Inherits="_Default" MasterPageFile="~/MasterPages/MainMaster.master"%> Line 2:
Line 3: <%@ Register TagPrefix="SBLContent" TagName="SBLContentBlock" Src="usercontrols/content.ascx"%>

Source File: /SBLWebSite/default.aspx Line: 1


Version Information: Microsoft .NET Framework Version:2.0.50727.4952; ASP.NET Version:2.0.50727.4927

Si no me creen cuando les digo que el archivo ‘/MasterPages/MainMaster.master’ archivo, de hecho, existe.

Además, la ubicación de este archivo se referencia correctamente en el código (como se indica en la Línea 1 anterior), y como he dicho, se mostró correctamente en el navegador de mi computadora anterior. También podría ser útil tener en cuenta que he intentado navegar a otras páginas en este sitio, y este navegador muestra el mismo mensaje para todas las páginas maestras ubicadas en mi carpeta MasterPages.

En resumen, por alguna razón el navegador no puede ver ninguna página en la carpeta MasterPages. ¿Alguien puede decirme por qué recibo este mensaje de error cuando la carpeta y el archivo están exactamente donde dice default.aspx?

¡Gracias de antemano!

Respuesta

8

Agradecemos su respuesta.

Sin embargo, este problema resultó ser un problema de IIS7. El mensaje de error que describí surgió de la distinción hecha en IIS7 entre un "directorio virtual" y una "aplicación" (no sé si existía tal distinción en IIS6). Para solucionar este error, abrí IIS7, hice clic con el botón derecho en la carpeta del directorio virtual para este sitio y seleccioné "Convertir a aplicación". Luego actualicé el navegador y el error desapareció.

suspiro.

+1

que usted debe fijar esto como un comentario a la respuesta de Ben en lugar :) Las respuestas son generalmente bien .. .. respuestas :) – Marko

+0

Por favor, dar más información acerca de esta solución, tengo el mismo problema pero no en su solución – Guy

+0

que fue el truco !, gracias a "convertir a la aplicación" establece la nueva ruta de raíz predeterminada a una URL de segmento adicional por lo que ahora localhost/myproject es la nueva raíz pat h a mi nuevo directorio virtual y ahora funciona bien !, gracias de nuevo. – dennisbot

1

dos cosas a comprobar:

  1. Al utilizar "~" en una ruta de archivo, asegúrese de que el despliegue de la aplicación actual cree que el directorio raíz es el mismo que era antes. (Me encontré con esto a veces moviendo una aplicación del servidor de desarrollo VS e IIS.)

  2. Asegúrese de que la cuenta de usuario con la que se ejecuta el servidor tenga permisos para acceder a ese directorio. Como acaba de mover el código desde otra computadora y probablemente algunos dispositivos de almacenamiento intermedios, los permisos de seguridad pueden no ser correctos.

0

En lugar de "~" pude simplemente cambiar el directorio a un pariente "..." Entonces, lo que originalmente tuve que me dio el problema fue algo así como: "~/MasterPage/TheMainMasterPage.master" y esto hizo que recibiera el mismo mensaje de error. Cambiarlo a "../MasterPage/TheMainMasterPage.master" arregló todo para mí.

0

Recientemente tuve que mover mis sitios web de un servidor (32 bit) a otro servidor (64 bit). En el nuevo servidor, experimenté el error de archivo no encontrado "Mensaje de error del analizador: El archivo '~/Master.maestro' no existe"

Nota: algunas de mis aplicaciones se construyeron para x86, todavía se necesita para convertir su sitio web para una aplicación :-)

Solución: En IIS8, haga clic en Grupo de aplicaciones -> seleccione un grupo de aplicaciones, por ejemplo DefaultAppPool -> haga clic en 'Configuración avanzada' -> En la sección 'General', establezca 'Habilitar aplicaciones de 32 bits' en 'Verdadero' -> Haga clic en Aceptar

Actualice su sitio web/webservice y eso debe hacer truco

0

enter image description here

el error viene en la forma de la tela como esta corrección

<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/Site1.Master" CodeBehind="add_drivers.aspx.vb" Inherits="au_transport.WebForm1" %>

<%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="Site1.Master" CodeBehind="add_drivers.aspx.vb" Inherits="au_transport.WebForm1" %>

Cuestiones relacionadas