在HTML标记内的ASP标记
问题描述:
最近我正在浏览一个ASP.Net网站。我在母版页中的一个看到提交的ContentPlaceHolder HTML注释里面,像这样:在HTML标记内的ASP标记
<!-- <asp:contentPlaceHolder runat="server" id="titleBar"/> -->
当我运行在IIS服务器的网站,该网站运行良好。但是在Visual Studio中,继承第一个母版页的第二个母版页(具有上述行的那个)具有引用“titleBar”占位符的Content标记。它显示为警告,设计视图无法解析代码,说'找不到当前主页面或页面中的titleBar'。但IIS运行它。上面的行是否有效,或者在Visual Studio中是否有设置来解析上面的行?
如果你想看到实际的代码,它在“C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ ASP.NETWebAdminFiles”中。它是旧的Web管理工具。
答
置于HTML注释标签内的asp标签由服务器解析。但Visual Studio不会解析它。它显示为一个错误。但是IIS可以,当我们使用浏览器的View Source时,我们可以看到结果。但是我仍然无法看到这是否是asp标签的有效使用。我们知道,只要ASP标记不在服务器端注释(<% - - %>)内,就可以从aspx文件中的任何地方解析asp标记。我只是感到困惑,因为IDE不会解析它。我无法使用页面的设计。但是当从服务器运行时,页面会正确加载,并且所述注释部分具有asp标签生成的文本。
这看起来像一个错误。你有没有尝试取消注释? – Tim 2014-11-03 18:31:00
'有没有在Visual Studio中设置解析上面的行?' - 我不这么认为。 – 2014-11-03 18:37:22
@Tim这不是一个错误。我只是看着生成的源代码,它实际上在更改页面时动态创建HTML注释。所以这意味着它是有效的。但视觉工作室不同意。 – thomarjos 2014-11-03 18:43:11