Tengo un archivo XML llamado PageData.xml en mi carpeta App_Data. Quiero llenar un XDocument con este archivo usando XDocument.Load.¿Cómo uso una ruta relativa en XDocument.Load?
Si Puedo proporcionar la ruta completa física funciona, es decir .:
XDocument vXDoc = XDocument.Load("/Work/Project/Web/100413 Dev/App_Data/PageData.xml");
... donde "trabajo" es una carpeta de mi unidad C:.
Si intento una ruta relativa de este tipo, sin embargo, me siento un DirectoryNotFoundException:
XDocument vXDoc = XDocument.Load("AppData/PageData.xml");
"No se pudo encontrar una parte de la ruta 'C: \ Archivos de programa (x86) \ Archivos comunes \ Microsoft Shared \ DevServer \ 10.0 \ AppData \ PageData.xml '. "
Esto es obviamente incorrecto, pero debe haber una manera fácil de establecer la ruta relativa correcta? ¿Qué estoy pasando por alto? Tu ayuda es apreciada.
Muchas gracias por su pronta respuesta. Su primera sugerencia no funciona para mí "tal cual", pero si agrego un '~' a la ruta, funciona perfectamente, es decir: XDocument xdoc = XDocument.Load (Server.MapPath ("~/App_Data/PageData .xml ")); Muchas gracias por su ayuda. – PaulC
Esto parece ser algo de IIS6, y estoy usando IIS7. – zeristor