我正在尝试从Web应用程序的App_Data文件夹中加载文件:

  KezMenu kmenu = new KezMenu("~/App_Data/Menu.xml");


但是由于某些原因,这会导致MSVC尝试在怪异的地方找到它:

Could not find a part of the path 'C:\Program Files (x86)\Common Files\Microsoft Shared\DevServer\10.0\~\App_Data\Menu.xml'.


我不明白为什么它指向这里而不是我的项目目录。

我该怎么做才能使它正常工作?

谢谢

最佳答案

听起来KezMenu希望您(而不是它)担心虚拟路径还是物理路径。尝试:

KezMenu kmenu = new KezMenu(
    HttpContext.Current.Server.MapPath("~/App_Data/Menu.xml"));


要么

KezMenu kmenu = new KezMenu(Server.MapPath("~/App_Data/Menu.xml"));


如果您已经具有Server属性。

09-10 21:03