deerchao的blog

Be and aware who you are.

该死的兼容性

今天因为以前用VS2005开发的网站发现了一个小bug,于是备份原项目文件后,用VS2008 beta2打开.
备份?不用,我自己做过了.
升级项目文件到2008的格式?嗯,升吧.
升级到.net 3.5?算了吧,等正式版出来了再说.
好,VS告诉我一切顺利,我于是更改了出错的语句(添加一个if语句,十几个字符而已),F5,没问题,于是发布到本机,远程登录,拷过去重编译的dll.
于是灾难开始了.
网站马上不能用了,提示"未能加载文件或程序集“System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它的某一个依赖项。"
晕了,我不明明记得不让它升级到3.5的么?好吧,我可能记错了,那就改过来吧.
但是,我没有办法改过来.
我把项目改成定位到.Net 2.0下的,然后发现添加不了Web.Extensions.dll,因为机器上只有一个Web.Extensions.dll,是定位到.Net 3.5的.
好吧,我再装一次Ajax 1.0 for Asp.net 2.0. 下载,安装,再打开VS, 添加引用...
它不让我添!无论是那个3.5.0.0的,还是刚下的那个1.0.61025.0的,它居然都说定位于更高版本的.Net Framework!
试了无数次,包括重启VS, 重启系统等大招都不行,这下彻底郁闷了.
到网上搜索一下,看到了这个:
[quote]
You should download and run this batch file.  This takes only a few seconds to run, and fixes an issue we found earlier this week with the version policy of System.Web.Extensions.dll - which is the assembly that contains ASP.NET AJAX.  If you don't run this batch file, then existing ASP.NET 2.0 projects built with ASP.NET AJAX 1.0 and VS 2005 will end up automatically picking up the new version of ASP.NET AJAX that ships in .NET 3.5 Beta2.  This will work and run fine - but cause you to inadvertently introduce a .NET 3.5 dependency in the applications you build with VS 2005.  Running the batch file will change the version binding policy of the new System.Web.Extensions.dll assembly and ensure that you only use the new .NET 3.5 ASP.NET AJAX version with projects that you are explicitly building for .NET 3.5.
[/quote]
好吧,我下载,我安装,我重启,我还是没办法添加这个引用.
我服了,我重装回VS2005总行了吧?
事实告诉我不行,即使我再花了半个小时重装VS2005 SP1也不行.
它根本就打不开我备份的解决方案,所有项目都提示"未知的项目类型".不可能吧,我明明是在用VS2008之前备的份啊,难道因为以前开发时用过一些插件,现在没有装么?
那我用VS2005 重建一个解决方案,把源码文件一个个的拉进去重新编译,总行吧?
依然不行.VS2005里压根就没有类库项目,Web应用等等的项目模板,只有几个安装啊之类的.估计是与VS2008冲突?
三个小时之后我终于决定了,升级到.Net 3.5吧.
半小时后,我发现在服务器上下载/安装.Net 3.5需要一个多小时...

我说微软我的神啊,您能把兼容性做得好点么?
-----------------
更新:一个多小时后.Net 3.5安装程序告诉我什么runtime should terminate之类的,安装不成功!
-----------------
更新: 第二天,重新在服务器上安装.Net 3.5,莫名其妙地成功.
      并且发现了为什么VS2005不能创建类库项目:为了加快安装速度,我只选择了VWD,没安装VC#.

posted on 2007-10-24 20:56 deerchao 阅读(258) 评论(5)  编辑 收藏 网摘

评论

#1楼  2007-10-29 10:50 Tiger!      

半个小时重装VS2005 SP1
请问下你的机子是什么配置啊?印象中我装的是花了3个小时啊   回复  引用  查看    

#2楼 [楼主] 2007-10-29 10:54 deerchao      

赛扬356(3.3G),1G内存.
关键是我只装了一个Visual Web Developer, 而且没装任何其它插件.   回复  引用  查看    

#3楼  2007-11-02 08:20 AndyHai      

@Tiger!
3小时……我还不如把SP1打到安装程序中再装VS2005了   回复  引用  查看    

#4楼  2007-11-10 17:38 chile [未注册用户]

楼主,最终问题怎么解决啊.我觉得当时我下载的时候是1.0的.怎么莫名其妙的就变成了3.5的.我的程序到是在.net2.0下开发的.现在想重新添加一个ajax的扩展控件就提示那个问题.我怎么办,另外还有是什么原因早成的呢?   回复  引用    

#5楼 [楼主] 2007-11-10 21:07 deerchao      

最终放弃了,在服务器上安装了.Net 3.5,它爱用哪个版本用哪个吧,我懒得折腾了:(   回复  引用  查看    


标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-10-28 12:20 编辑过
Google站内搜索


China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!

相关文章:

相关链接:


 
<2007年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

导航

统计

公告

给网络添加价值,就是让自己增加价值.

本博客所有内容,均为原创或对互联网已有资源的再加工,希望对你有用.在声明原作者的前提下,你可以任意使用,但本人对其正确性,使用的后果等不做任何担保,也不负任何责任.

正则表达式30分钟入门教程 v2.21 2007-8-3

I Want Spec#!

与我联系

搜索

 

常用链接

留言簿(66)

我管理的小组

我的标签

随笔档案(127)

文章分类(9)

文章档案(9)

新闻档案(9)

Links

积分与排名

最新评论

评论排行榜