2009-09-08 58 views
1

繼承人我的代碼:問題加載XML文件asp.net的MVC

XElement navegacion; 
    public Navegacion() 
    { 
     this.navegacion = XElement.Load(HttpContext.Current.Server.MapPath("App_Data/navegacion.xml")); 
    } 

,當我去到它的工作原理就好了:

http://localhost/Default.aspx

的,當我去

http://localhost/Users

但是無法打開文件,當我去

http://localhost/Users/Index

http://localhost/Users/Index/1

或任何其他ID爲這一問題。

Navegacion類是一個模型。

有沒有辦法解決這個問題?

回答

2

您需要在路徑之前添加另一個斜槓,以使其相對於根目錄而不是當前文件夾。這就是爲什麼它在Default.aspx上工作,但不是/Home等,因爲這使得MapPath返回/Home/App_Data/navegacion.xml

HttpContext.Current.Server.MapPath("~/App_Data/navegacion.xml")