Net下ajax 出现sys没定义的解决办法。

开发环境 vs2008 net3.5   操作系统windows 7 

   这两天做一个项目,用到ajax,在vs2008里面调试的时候一切正常,领导让演示一下程序,因为演示地点不在办公室,所以需要配置一下IIS ,通过局域网访问我台式机的IIS。结果配好IIS后登录系统一切正常,也就没太注意,wind7环境第一次用,以前都是windows2003 server环境,再加上ajax控件也是第一次用,也没什么经验。

   演示的时候开始一切正常,可是一到有ajax应用的页面,一律提示sys没定义。郁闷啊,丑出大了,回来后在vs自带的调试器下,测试什么问题没有,但是只要是在IIS下面运行肯定出错,在网上找了很多办法一律行不通。研究了2天,也没搞定,晚上回家也在想这个事情,无意中想到一种可能,于是打开电脑新建立一个web项目,随便拖入一个ajax控件,编译好,在iis下测试,竟然通过。看来问题不是处在iis上,而是程序本身有问题,再进一步分析,控件试用方法都一样,只能是web.config文件出问题了。于是打开两个项目的web.config 文件对比,结果没发现问题,和ajax相关的内容一模一样。

  看了几遍都一样,还不死心的我,开始把新建项目的web.config文件相关内容拷贝到出问题的项目配置文件里覆盖,结果让我大跌眼镜,IIS测试一次通过。真是奇怪了,有点较真的我,把刚才出问题的配置代码,拷贝出来,一个字母一个字母的比较,看的我眼睛都开始发痛的时候终于发现有一个字母不一样,其他都一样。这个字母只是大小写不一样,难道是这个原因导致的?

于是把原来备份的web.config 恢复到项目里面,找到那个字母,改成大写。然后在iis里面测试,一次通过。虽然找到了问题,但是问题的起因却有点让我莫名其妙,在vs本身带的调试器里面配置文件是没有问题的,测试通过,但是一到iis就有问题,竟然只是大小写引起,难道iis对配置文件的字母大小写也敏感?

   如果有朋友遇到sys没定义,而利用网上的方法又解决不了的时候,不妨试试我讲的方法,重新建立一个web项目,如果能在iis下面测试通过,说明你原来的项目web.config文件出问题,直接把新项目的配置文件相关部分拷贝过去覆盖,方法虽然笨了点,但是要比在网上搜索解决方法的时间少的多。

 

posted @ 2010-04-18 15:41  雪貂  阅读(293)  评论(0编辑  收藏  举报