none
将project Framework改为3.5的代价是什么? RRS feed

  • 问题

  • 我有一个.Net2.0的工程,有不少客户。 最近由于希望引入LINQ开发,因此正在考虑将project Framework从2.0改为3.5
    但是我不知道这样做的话,是否会对今后我的客户造成不利影响。 要知道,很多客户OS还是.Net1.3或2.0

    如果我改成3.5的话,是不是没有升级操作系统的客户整套程序就不能用了? 还是说只是不能使用用到了3.5特性的模块?

    另外,我还想知道 .Net 3.5还会造成哪些实际的客户端问题。我B/S和C/S结构的模块都有的。

    谢谢!
    2010年3月10日 3:11

答案

  • 你好,如果说代价就是客户端的.Net 版本要求更高了,要考虑客户端安装包大小的问题。



    我们要把爱心传递给更多需要帮助的人。
    博客:http://terryfeng.cnblogs.com
    微博:http://t.sina.com.cn/terryfeng
    个人:http://www.terryfeng.com
    2010年3月10日 3:34
  • 你好!
         如果你的程序中引入LINQ,那么客户也必须要安装.NET Framework3.5 才可以运行你的程序!
         实际上这个问题和技术关系不大,做好沟通就可以了,让客户安装.NET Framework3.5就可以了!
         另外一种选择就是不要升级你的程序,具体取舍可以根据项目的实际情况来做啊!
    周雪峰
    2010年3月10日 4:43
    版主
  • 其实.NET 3.5 的基础技术就是base 在.NET 2.0 上的。LINQ WCF 等等都是基于.NET 2.0 上开发出来的features。 你的程序基于.NET2.0 开发,那么你的换到.NET 3.5 上是没有问题的。另:.NET 有1.0 和1.1 版本以后就是.NET 2.0了, 没有.NET1.3。

    改成.NET 3.5 需要安装.NET Framework 3.5 这个对于用户来说,只要系统盘有足够的控件就好(用于安装.NET Framework 3.5),其它没有太多影响。

    还有一点要说明的是:

    LINQ 可以提高你的开发效率,但可能会影响运行效率。 LINQ to XML 还比较好。LINQ to SQL 麻烦就大了。 最主要问题,你没法用存储过程,提取数据。

    关于 Linq To SQL 的效率问题,我觉得并不是个问题,Linq To Sql 用的好不好,完全取决于您对它理解的深度。另外,L2S 也支持存储过程的。

    LINQ 包含了一下函数式编程的概念,比如 Lambda Expression,不动点,组合子逻辑等。并不是每个人都理解这些的。如果大家有兴趣研究 Linq,请参考 Dixin Yan 在 ASP.NET 上的官方 Blog
    Mark Zhou
    2010年3月10日 9:40

全部回复

  • 其实.NET 3.5 的基础技术就是base 在.NET 2.0 上的。LINQ WCF 等等都是基于.NET 2.0 上开发出来的features。 你的程序基于.NET2.0 开发,那么你的换到.NET 3.5 上是没有问题的。另:.NET 有1.0 和1.1 版本以后就是.NET 2.0了, 没有.NET1.3。

    改成.NET 3.5 需要安装.NET Framework 3.5 这个对于用户来说,只要系统盘有足够的控件就好(用于安装.NET Framework 3.5),其它没有太多影响。

    还有一点要说明的是:

    LINQ 可以提高你的开发效率,但可能会影响运行效率。 LINQ to XML 还比较好。LINQ to SQL 麻烦就大了。 最主要问题,你没法用存储过程,提取数据。
    2010年3月10日 3:26
  • 你好,如果说代价就是客户端的.Net 版本要求更高了,要考虑客户端安装包大小的问题。



    我们要把爱心传递给更多需要帮助的人。
    博客:http://terryfeng.cnblogs.com
    微博:http://t.sina.com.cn/terryfeng
    个人:http://www.terryfeng.com
    2010年3月10日 3:34
  • 你好!
         如果你的程序中引入LINQ,那么客户也必须要安装.NET Framework3.5 才可以运行你的程序!
         实际上这个问题和技术关系不大,做好沟通就可以了,让客户安装.NET Framework3.5就可以了!
         另外一种选择就是不要升级你的程序,具体取舍可以根据项目的实际情况来做啊!
    周雪峰
    2010年3月10日 4:43
    版主
  • 你好!

    这里主要需要考虑的问题是为 c/s 客户端的用户升级 framework 3.5, 3.5 安装包比 2.0 要大很多,这还需要你根据你的实际情况来定。

    知识改变命运,奋斗成就人生!
    2010年3月10日 5:07
    版主
  • 对于B/S结构的程序,是不是只需要把Server提高到.Net 3.5就可以了? 是否需要客户端的OS也提高到 .Net 3.5 ? 或IE 8 ?
    2010年3月10日 6:30
  • 如果客户端必须安装.Net3.5的话就比较麻烦了。 需要考虑安装包大小,客户电脑CPU和内存配置,另外如果单个客户的用户数量在100台电脑以上规模的化就更麻烦了,需要协调整个单位操作系统的升级工作。 这些都是要客户额外花钱花时间的啊。。。。 工程问题有时会比软件开发要复杂很多。。
    2010年3月10日 6:34
  • 对于B/S结构的程序,是不是只需要把Server提高到.Net 3.5就可以了? 是否需要客户端的OS也提高到 .Net 3.5 ? 或IE 8 ?

    是的,对于B/S结构的程序,只要服务器端安装.NET Framework3.5就可以了!
    周雪峰
    2010年3月10日 6:45
    版主
  • 其实.NET 3.5 的基础技术就是base 在.NET 2.0 上的。LINQ WCF 等等都是基于.NET 2.0 上开发出来的features。 你的程序基于.NET2.0 开发,那么你的换到.NET 3.5 上是没有问题的。另:.NET 有1.0 和1.1 版本以后就是.NET 2.0了, 没有.NET1.3。

    改成.NET 3.5 需要安装.NET Framework 3.5 这个对于用户来说,只要系统盘有足够的控件就好(用于安装.NET Framework 3.5),其它没有太多影响。

    还有一点要说明的是:

    LINQ 可以提高你的开发效率,但可能会影响运行效率。 LINQ to XML 还比较好。LINQ to SQL 麻烦就大了。 最主要问题,你没法用存储过程,提取数据。

    关于 Linq To SQL 的效率问题,我觉得并不是个问题,Linq To Sql 用的好不好,完全取决于您对它理解的深度。另外,L2S 也支持存储过程的。

    LINQ 包含了一下函数式编程的概念,比如 Lambda Expression,不动点,组合子逻辑等。并不是每个人都理解这些的。如果大家有兴趣研究 Linq,请参考 Dixin Yan 在 ASP.NET 上的官方 Blog
    Mark Zhou
    2010年3月10日 9:40