欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

在Framework2.0环境下运行3.5的代码

程序员文章站 2022-05-24 11:38:09
...

http://www.cnblogs.com/imfunny/archive/2011/08/11/2134639.html 因为许多的服务器特别是廉价的服务器上使用的是Framework的v2.0.50727。再加上自己开发的算是产品,所以就需要降低一些客户的前期成本,而自己同时也喜欢简单的代码。后来查了下,得知其实F

http://www.cnblogs.com/imfunny/archive/2011/08/11/2134639.html


因为许多的服务器特别是廉价的服务器上使用的是Framework的v2.0.50727。再加上自己开发的算是产品,所以就需要降低一些客户的前期成本,而自己同时也喜欢简单的代码。后来查了下,得知其实Framework3.5也是可以运行在2.0上的。引用System.Core.dll就可以直接的编写了。在2005下是不行的。因为2005默认的是2.0的编译器。即使引用了也没用。


引用后点击属性设置下。见截图啊。这样就可以在Vs2008上直接使用了。(这些都放到了附件里,需要的点击下载连接就行了。)

在Framework2.0环境下运行3.5的代码


使用这个有什么好处呢。
首先就是方法的扩展了。
比如之前的MD5。

?

string dd = Utils.Md5("ddddd");

现在通过方法扩展可以写成这样

?

var dd = "ddddd".Encode(Encode.Md5)

现在的代码越来越Query风格了。我喜欢。其实就不说了匿名函数,lamda表达式,linq了。

当完成这步的时候编译之后的Dll已经可以直接在2.0下运行了。


但是在WEB开发的时候。编译之后在2.0下可以运行的。总不能够每次修改都要把Dll给全部编译下。CodeFile在这样的情况下也是出错的。因为CodeFile在这个时候还是会出错的。默认的csc.exe是2.0的。这个时候就简单了。

把附件的包给解压出来,点击附件里的“取得权限.reg”,找到目录C:\Windows\Microsoft.NET\Framework\v2.0.50727,然后右键菜单上就有了“取得权限更改",点击它。然后把附件下v3.5.rar解压出来,把v3.5里的文件复制替换到v2.0.50727。于是编译器就更换了。然后点击“取得权限卸载.reg”。删除掉菜单里的取得权限的按钮。

有图有真相:

在Framework2.0环境下运行3.5的代码


XP下应该同样。就不具体的去测试了。


OK。大工告成,现在一切都是浮云。剩下的就是去爽了。发布的时候生成DLL直接放到生产服务器上就行了。一切就那么简单啊。剩下的就是用3.5的风格去编写2.0的程序了。

那撒撒的,上面使用到的工具都整理了下,在附件里,想使用的直接点击附件下载吧。

附件下载