在Visual Studio中添加自定义目标验证架构

时间:2010-12-21 16:36:14

标签: visual-studio-2008 schema vxml

我想使用Visual Studio 2008 Web项目来构建使用以下内容的应用程序:

<!DOCTYPE vxml PUBLIC "-//W3C//DTD VOICEXML 2.1//EN" 
    "http://www.w3.org/TR/voicexml20/vxml.dtd">

因为它是aspx文件中的验证模式。但是,当我在vxml.dtd中编写诸如<vxml></vxml>之类的标记时,它会引发一些警告:Element 'html' occurs too few timesElement 'vxml' is not supported

我认为这是由于工具&gt;中的验证目标设置所致。选项&gt;文本编辑器&gt; HTML&gt;验证

如何将vxml.dtd添加到目标下拉框中的可能设置列表中?

谢谢, 本

1 个答案:

答案 0 :(得分:1)

您对验证目标的假设是正确的,我不认为在使用ASPX页面时有任何解决方法。只有在XML编辑器中打开模式验证时才能获得模式验证。您可以尝试右键单击文档并选择“打开方式...”,然后使用XML编辑器打开它。它应该选择您在vxml标记中包含的模式定义。但我发现VS中的XML编辑器有点不稳定,并且经常最终使用第三方XML编辑器,如Oxygen

我使用ASP.NET渲染动态VXML时采用的方法是使用XSLT和一些帮助程序类来呈现文档。这样您就可以获得模式验证并使用VS中的XSLT调试器来测试页面的呈现方式。我发现更好的方法是使用带有Razor的ASP.NET MVC 3。关于如何使用这种方法,有一个名为VoiceModel on CodePlex that provides examples的开源项目。