实时检验您的页面是否符合XHTML标准——使用Validator Module

当前,Web开发人员都希望自己的网站可以符合XHTML标准(如果您不知道什么是XHTML标准,请参考 Web标准和ASP.NET - 第一部分 XHTML介绍)。在通常的开发基于ASP.NET的符合XHTML标准的Web程序时,我们需要不停的查看渲染出来的ASPX页面源文件并copy & paste到某些在线的XHTML Validator中。当然,在小型简单的Web程序中这样也没什么难的。但考虑到随着程序规模的扩大,这种方案的不方便一面就渐渐显露出来。或者您可以在页脚处提供一个“验证XHTML”的链接,指向一个地址,再由这个地址获取您的页面并做以验证,但对于开发一些需要认证才能访问的页面时候(比如Hotmail的收件箱),或是开发环境并没有持久的网络连接时候,这种办法就没法使用了。

Bruusi和Josh开发了一个ASP.NET 2.0 Validator Module (注意:仅可用于ASP.NET 2.0程序),可以在页面渲染的时候自动为您检查该页面是否符合XHTML标准,并在页面上显示验证结果(可以自定义显示部位)。

这个Validator Module会在您的每个页面渲染时根据页面的DOCTYPE自动从W3C下载相应的最新的DTD文件以验证您的页面,并将这些DTD文件其缓存在本地,使您接下来可以离线开发并验证。

您可以在http://www.thejoyofcode.com/Validator_Module.aspx 找到这个Validator Module的英文介绍以及最新更新。

现在让我们看一下一个使用Validator Module的页面的截图。这里我只是简单的通过一个Button来切换某个Label上面文字的换行符(HTML中的<br>,XHTML中的<br />),来使这个页面在XHTML合法与非法之间切换。

合法:
validatormodule1.JPG

非法:
validatormodule2.JPG

您可以在http://www.thejoyofcode.com/ValidatorModule/找到更多的示例程序。

下面我们来看看如何使用这个Validator Module,首先,在http://www.thejoyofcode.com/uploads/ValidatorModule.zip 下载所需要引用的程序集并在您的Web Site中添加对其的引用。

然后,按照下载的压缩包中的示例Web.config文件修改您的Web.config文件。您需要在<configuration>节下添加如下内容:

其中validatorModule的mode属性可选Html,HtmlFloat,Comments或者Custom,如果您选择了Custom,还需要编写对IValidationRenderer接口的实现。pageExtensions节中可以指定您需要验证的文件类型。contentTypes节中可以指定您需要验证的内容类型。

<!--  setup the custom configuration section  -->
< configSections >
  
< section  name ="validatorModule"  type ="Tjoc.Web.Validator.ValidatorConfigHandler, Tjoc.Web.Validator" />
</ configSections >

<!--  configure the validator  -->
< validatorModule  enabled ="true"  mode ="HtmlFloat" >
  
< pageExtensions >
    
< add  value =".aspx" />
  
</ pageExtensions >
  
< contentTypes >
    
< add  value ="text/html" />
  
</ contentTypes >
</ validatorModule >

您还可以添加如下内容(可选)以通过代理服务器访问W3C:

< proxy  server ="proxyserver"  port ="80"  domain ="domainname"  username ="username"  password ="password" />

最后,还需要在<system.web>段下添加如下内容:

<!--  add the Validator to the HTTP modules collection  -->
< httpModules >
  
< add  type ="Tjoc.Web.Validator.ValidatorModule, Tjoc.Web.Validator"  name ="ValidatorModule" />
</ httpModules >

OK,万事大吉,您现在可以方便的随时随地检查您的页面是否符合XHTML标准了!

本文开头的示例程序可在此下载:http://files.cnblogs.com/dflying/ValidatorModuleDemo.zip

Validator Module可在此下载:http://www.thejoyofcode.com/uploads/ValidatorModule.zip

如果您希望研究一下Validator Module的源程序,可以在http://www.thejoyofcode.com/contact_us.aspx 与Bruusi和Josh联系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值