Disculpas si esto ya se ha respondido en este sitio, busqué pero no encontré este escenario exacto.Cómo solucionar problemas de "System.Web.HttpException (0x80004005): el archivo no existe"?
Estoy agregando log4net a un servicio WCF. Agregué un controlador en el evento Application_Error, y está detectando un error de archivo no encontrado en cada solicitud.
He visto esto con sitios web, y generalmente el error se puede rastrear hasta no tener un archivo "favicon" en el directorio raíz, o una imagen faltante a la que se hace referencia en una hoja de estilos css.
Sin embargo, este es un servicio WCF, no hay una hoja de estilo CSS, y agregar un favicon a la raíz no resolvió el problema.
¿Alguien más tiene una buena manera de solucionar esto?
Algunas pistas:
- no he desplegado esta todavía en el servidor IIS real, yo estoy corriendo localmente.
- El error no sucede cuando estoy corriendo en DEBUG dentro de Visual Studio, sólo cuando acceden al servicio desde un navegador web (Internet Explorer o Chrome)
que añade que la ruta URL y el archivo al mensaje de error, y esto es lo que son:
FilePath:/
error: System.Web.HttpException (0x80004005): el archivo no existe.
Editar: los valores anteriores son los que aparecen en la excepción conectado:
protected void Application_Error(object sender, EventArgs e)
{
var objErr = Server.GetLastError().GetBaseException();
if (objErr is System.Web.HttpException)
{
var filePath = Context.Request.FilePath;
var url = ((HttpApplication) sender).Context.Request.Url;
Log.Error("URL: " + url + "; FilePath: " + filePath, objErr);
} else
Log.Error("Application Error", objErr);
}
Cualquier ayuda sería muy apreciada.
¿Olvidaste mencionar el archivo .svc en la URL? – Pradeep
Ver la edición que publiqué en mi pregunta. – camainc
use la tecla '(la que también contiene el caracter ~) para formatear el código en comentarios y similares. –