复杂ASP.NET服务器控件调整小技巧
在创建或修改布局复杂服务器端控件时,大量的时间都是在编译,等待JIT,修改,编译,JIT...这样一个循环中,而且两个编译常常还很耗费时间。特别地,当控件已集成在页面之中后,在出现一些布局效果上的小偏差,再调整起来将是一个非常无趣和耗时的工作。
而这时如果能直接修改已输出的html,很可能会更加迅速的找到问题所在。但是不幸的时,通过浏览器SaveAs出来的html代码显然是不太具有修改价值的。因为本来就只是要进行细微的布局调整,而SaveAs出来页面新的布局问题可能比本身要解决的问题更加严重。
那么就直接通过ViewSource把代码copy出来存为html文件呢?这时后我们会发现页面里面所有通过相对路径定位的资源都回丢失,比如什么图片啊,啊等等,缺失了这些东西,页面也就同样失去了再调整编辑的价值。
在HTML中,有一个base标签,这个元素似乎只在模态窗口提交页面避免弹出新窗口的时候,有用到过,平时似乎很少有看到网页用这个元素。殊不知这个base在调试html代码时,非常有用。比如你的ASP.NET页面是文件,只用再在其<head>标签中加入<basehref=时,会发现这时和打开http://www.chinaitlab.com/Index.aspx的效果是一样的,所有的图片和脚本都正常被载入,这时候在IEToolBar等DOM查看工具帮助下,就可以很方便通过直接修改html来调整页面或控件输出的外观样式,在找到错误后再去服务器端代码中进行修改。