2011-04-01 26 views
17

Tengo una aplicación de .NET que acabo de abrir en Visual Studio 2010 y convertida a 4.0 cuando me lo pidió en la puesta en marcha. Voy a tratar de construir el sitio, y me sale este error:Error al asignar la ruta '/'. .net 4.0

Failed to map the path '/'. 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. 

[InvalidOperationException: Failed to map the path '/'.] 
    System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +8804446 
    System.Web.Hosting.HostingEnvironment.MapPathInternal(VirtualPath virtualPath) +42 
    System.Web.VirtualPath.MapPathInternal() +4 
    System.Web.HttpRequest.MapPath(VirtualPath virtualPath, VirtualPath baseVirtualDir, Boolean allowCrossAppMapping) +107 
    System.Web.HttpRequest.MapPath(VirtualPath virtualPath) +37 
    System.Web.HttpServerUtility.MapPath(String path) +99 
    NU.WorkManagement.Lookup.Lookups..ctor() +82 
    NU.WorkManagement.Engine.GlobalModule.Init(HttpApplication application) +624 
    System.Web.HttpApplication.InitModulesCommon() +80 
    System.Web.HttpApplication.InitModules() +43 
    System.Web.HttpApplication.InitInternal(HttpContext context, HttpApplicationState state, MethodInfo[] handlers) +828 
    System.Web.HttpApplicationFactory.GetNormalApplicationInstance(HttpContext context) +304 
    System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context) +107 
    System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +327 

Probé la solución más popular que encontré vis Google (../ reemplazar y con ~/pero no hay ninguna gustaban ...)

actualización:

búsquedas constructor:

public Lookups() 
{   
    _dirPath = System.Web.HttpContext.Current.Server.MapPath("/") + _xmlPath;   
} 
+0

¿Tiene una configuración de documento predeterminada? ¿Has configurado las rutas? – Oded

+0

¿Puedes publicar el constructor para la clase 'Lookups'? Obviamente, se está mapeando algo incorrecto. ¿En qué servidor web estás ejecutando esto? ¿Esto está bajo un directorio virtual? Si está utilizando el servidor web incorporado en VS, ¿está ejecutando VS como administrador? – TheCloudlessSky

+0

Me estoy ejecutando usando el servidor web incorporado en VS, sí, me estoy ejecutando como administrador. Firmé que respondería esas dos preguntas. ¿Fui a buscar la clase de búsqueda? – kralco626

Respuesta

5

Trate System.Web.HttpContext.Current.Server.MapPath("~/"). Observe el ~.

10

Estaba tratando de realizar un ejercicio en un libro de Microsoft Step By Step y me tocó este problema al intentar precompilar una aplicación ASP.NET.

Así es como supere esto, ¡y me llevó un día darme cuenta!

Cuando abre el Símbolo del sistema de Visual Studio para realizar su compilación/precompilación, debe hacer clic con el botón derecho y seleccionar "Ejecutar como administrador".

Eso es todo lo que hizo por mí cuando se trata de ejecutar este aspnet_compiler -v DeployThis C: \ -f DeployThis -u

42

Sé que es y la pregunta de edad, pero para el registro si está ejecutando en contra de IIS entonces

'iisreset' en la consola puede ayudar a resolver "Error al mapear la ruta '/'." problema. Tuve este problema después de cambiar el nombre de los sitios en IIS.

+0

¡Gracias! Acabo de actualizar una aplicación .NET y iisreset hizo el truco aunque ya había intentado reiniciar el sitio ... – ColinM

+0

Bueno, esto resolvió mi problema enseguida. – philwilks

+0

no pensé que esto iba a ayudar, ya que reinicié los grupos de aplicaciones, pero aplausos, esto también resolvió totalmente mi problema – workabyte

1

Tuvimos el mismo problema, IISRESET no lo hizo. Resultó que el Directorio virtual que intentamos asignar tiene una barra diagonal inversa doble (d:\folder\\subfolder\) en la denominación (el directorio virtual de IIS se creó con el script de powershell). Al eliminar la barra invertida adicional, HostingEnvironment.MapPath dejó de lanzar excepciones.

Solo en el caso esto podría ayudar a alguien :-)