我是asp.net的新手。我正在处理的网站有一个母版页。我在母版页中定义了一个asp菜单。当我在浏览器中渲染页面(ie和firefox)时,一半时间一切正常。菜单显示正常,当我将鼠标悬停在菜单项上时,子菜单项可见。
但是休息一半的时间,事情变得糟糕。而不是主菜单旁边的箭头符号(表示菜单有子项),我得到“展开项目”标志。当我将鼠标悬停在该项目上时,在IE中显示“对象预期”错误。在Firefox中,我得到“ Menu_HoverStatic ”和“ Menu_Unhover ”未定义错误。
我用Google搜索并发现有几个人遇到了同样的问题。我尝试了各种解决方法,但似乎没有任何工作。
我认为这个问题与webresources.axd文件有关。我查看了呈现的Html页面的源代码,它包含了名为webresource.axd的javascript文件的链接。当我试图打开提到的链接时,浏览器显示错误“页面不存在”。
我在IIS中为webresource文件创建了正确的扩展名映射。我甚至取消选中了验证文件的选项。
我已经浪费了将近一半的时间。我希望有人可以帮助我。我在Win 7盒子上使用IIS7,visual studio 2008。
答案 0 :(得分:0)
此问题通常与* .axd文件的问题以及它们在IIS中的处理方式有关 - 这就是为什么它经常发生在生产服务器而不是dev上。
在IIS6中,确保在应用程序扩展区域中取消选中“验证文件存在”复选框以查找* .axd。在IIS7中,对于Handler mapppings下的* .axd文件,这已经变为更明显的“仅当请求被映射到文件时的调用处理程序”。
另一种选择是运行“aspnet_regiis -ir -enable”以便为最新版本的.net注册* .axd文件