解决“验证():元素'xxxx'不受支持”Visual Studio 2005/2008中的警告

时间:2009-09-24 23:37:33

标签: asp.net visual-studio-2008 visual-studio-2005

在过去的几天里,我开始在Visual Studio 2008 ASP.NET WebForms项目中收到以下验证警告(设计时出现绿色波浪线):

  

验证():不支持元素'xxxx'。

其中'xxxx'是标准的ASP.NET服务器控件(asp:panel,asp:container,asp:textbox)

应用程序仍然可以编译并运行,但警告是一种烦恼。

请参阅我找到的解决方案的答案。

3 个答案:

答案 0 :(得分:37)

从Windows XP中的“C:\ Documents and Settings [用户名] \ Application Data \ Microsoft \ VisualStudio \ 9.0 \ ReflectedSchemas”文件夹(或“... \ VisualStudio \ 8.0 \ ...”,如果运行Visual Studio 2005)中删除文件。在Windows 7中,它位于“C:\ Users {User Profile} \ AppData \ Roaming \ Microsoft ... etc”下。请记住,路径的“VisualStudio”部分将根据安装的版本而有所不同。

我关闭了Visual Studio(对于会影响IDE的更改总是很好的想法),删除文件然后重新打开项目。警告消失了。

我在以下网址找到了对此解决方案的引用: http://forums.asp.net/t/1205528.aspx http://blogs.msdn.com/mikhailarkhipov/archive/2005/04/21/410557.aspx

快速Google搜索找到了解决方案。 仅供参考,我在谷歌使用的搜索词是“不支持元素”。

我不知道为什么会发生这种情况,但我知道网络环境中发生了一些有趣的域名配置文件。

答案 1 :(得分:5)

另一种可能的解决方案。使用母版页时,根据您的doctype,使用ContentPlaceHolders将元素放在不允许的文档部分时可能会出现此警告。例如,在xhtml 1.0 Transitional下放置一个div。删除攻击性元素(即使页面有效)将使警告消失。

答案 2 :(得分:0)

我的doctype和html标记错误。确实有效:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">