解析器错误或母版页错误?
我的 Visual Studio 2010 项目中有一个带有 MasterPage 的网站。
我有许多 WebForms 位于子目录中,但对于这个问题,我将重点关注名为/contact的子目录。
在 VS2010 中,/contact目录中的所有 WebForms 都显示为它们应该使用此页面指令代码:
<%@ MasterPageFile="~/Site.Master" ... %>
据我了解,~/
应该将页面定向到根文件夹。
然而,当我转到该文件夹中的页面时,我收到一个解析器错误,指出 MasterPage 不存在,因为该页面正试图从这里加载 MasterPage:
'/contact/Site.Master'
如果我修改我的 VS2010 项目,以便页面指令尝试退回到根级别,VS 项目会给我母版页错误。
不工作:
<%@ MasterPageFile="../~/Site.Master" ... %>
也不起作用:
<%@ MasterPageFile="~/../Site.Master" ... %>
这里的诀窍是什么?