用VS2005开发基于.net 1.1的程序

马上08年了,可公司大部分还在用vs2003开发.net 1.1的项目,VS2005出来这么久了,VS2008也推出了beta版,再不用2005就没机会用了,呵呵。但是公司大部分项目都是基于.net 1.1的,并且很多通用组件也都是架构在.net 1.1上,所以想用2005也不是一件容易的事。这两天专门研究了一下怎样用2005开发.net 1.1的项目,结果似乎不太令我满意,希望有这方面需求的朋友一起研究,共同找出这个问题的解决办法。

首先新建一个xml格式的文件,内容如附件,把它保存为abc.targets,存到任何位置都可以。

用vs2005开发.net 1.1的项目,主要是应用了MSBuild,来改变VS2005的编译时用到的运行库,也就是将默认的.net 2.0改为.net 1.1,以一个C#编写的控制台程序为例。用VS2005新建一个控制台程序,然后用记事本打开这个项目文件,找到Import节点,如下:
< Import  Project ="$(MSBuildBinPath)\Microsoft.CSharp.targets"   />
把它替换为
< Import  Project ="路径\abc.targets"   />

然后用2005打开这个项目,点击生成-&gt;配置管理器,点击活动解决方案平台的下拉框,点击新建,选择.net 1.1,然后确定。
编译这个项目,发现编译不通过,提示“类型或命名空间名称“Generic”在类或命名空间“System.Collections”中不存在(是否缺少程序集引用?)”,原来是这个项目自己生成的Program.cs里引用了Generic这个.net 2.0的特性,当然编译不过了,呵呵。删除他,编译通过。

所以,用VS2005开发.net 1.1的项目,不能用到任何.net 2.0的新特性。
类库和控制台程序都可以用上面的方法来开发,也不麻烦,因为VS2005自动生成的类里面,只帮我们加入了Generic这个命名空间,我们删了他就行。但是,对于我们大部分的项目Web Application,就变得非常麻烦,以至于我非常怀疑这样做的必要性。

VS2005里,没有了WebApplication的概念了,变成了网站,并且是没有项目文件的,所以我们就不能用上面的方法来做了。网站这个东西,一直被人诟病,因为他相对于VS2003里的WebApplication来说,变化的太大了,变得我们不会用,不好控制:没有项目文件,不生成dll,不需要编译,没有命名空间,等等。微软可能也听到了骂声,马上出了一个VS2005的补丁包来解决这个问题,装了这个补丁之后,VS2005里新建项目的选项里,出现了熟悉的WebApplication和WebService,有项目文件,有命名空间,也能购生成dll。有兴趣的朋友可以去百度搜一下“VS2005 SP1”,有400多M,安装起来非常费劲,没恒心没毅力外加C盘不够大的朋友,我奉劝你们还是别装了。

装了VS2005 SP1,有了Web Application的项目文件,那就可以按照上面的做法来编译asp.net 1.1的web app了。但是我在这里却遇到了难题:用VS2005新建WebForm以后,自动生成的不管是后台代码,还是aspx页面,和Asp.net 1.1有很大不同,自动生成的代码里包含了大量的.net 2.0的特性,虽然手动改成1.1的,是可以正确编译通过的,但是也太麻烦了。不知道各位朋友有没有解决方案。
希望有这方面需求的朋友一起研究,共同找出这个问题的解决办法。
 
/Files/kongxiangxin/abc.rar

转载于:https://www.cnblogs.com/kongxiangxin/archive/2009/06/25/1511237.html

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值