对于VS2003使用还是比较常用的,于是公司技术小组研究了一下VS2003,所以拿出来和大家分享一下,希望对大家有用。但前提是要深入理解到底什么是VS2003,及VS2003是怎么使用的。
假如你在你的 web 应用中编写了自定义的客户端JavaScript脚本,而且将使用AJAX的话,请读下去,了解如何避免这个常见的疑难杂症 (注:想浏览我贴出的其他技巧,诀窍和疑难杂症的帖子列单的话,请访问这里的这个网页)。
症状:
当你往先前成功地从VS 2003 升级到VS 2005的项目中添加新的客户端JavaScript脚本时,你会看到奇怪的行为。在使用ASP.NET AJAX UpdatePanel 控件时,这个奇怪的行为有时会包括页面做整页 postback,而不仅是递增性的局部更新的情形。 当你打开你的web.config文件,你会看到其中的
- <configuration>
- <system.web>
- <xhtmlConformance mode="Legacy" />
- < SPAN>system.web>
- < SPAN>configuration>
背景:
ASP.NET 1.0 和 1.1 中的许多服务器端控件并不输出与XHTML兼容的标识。ASP.NET 2.0 对此做了改变,在默认情形下,所有的服务器端控件都会输出与XHTML兼容的标识 (注:你可以从这篇优秀的MSDN文章中进一步了解ASP.NET 2.0 中标准兼容的情况)。
在VS2003使用时,在早期的ASP.NET 2.0 beta 中我们注意到的一件事情是,当把客户应用升级时,其实,很多应用会假设页面输出并不是与XHTML兼容的。把我们服务器控件的默认输出改成与XHTML兼容的话,它有时会修改页面的视觉显示。为向后兼容的目的,我们添加了上面这个
在默认情形下,当你使用VS 2003升级到VS 2005的Web项目移植向导时(无论是网站或 web 应用项目),你的web.config文件里会添有这个legacy配置。#t#
解决方案:
除非你已知当你的网站以XHTML模式运行时会有问题(但你还没时间更正),我总是建议从你的web.config文件里去掉
这将使得你的HTML输出是符合标准的,此外,这也将导致你的服务器控件的HTML输出是well formed,即, 开始标签和结束标签总是相匹配的。当你使用AJAX技术来动态替换你的页面上某些HTML元素的内容时,这尤其重要,否则的话,客户端JavaScript脚本有时会搞不清楚容器元素,导致出错。它也将确保ASP.NET AJAX会在你的网站上正常工作。
希望本文对你用VS2003使用有所帮助。