要求用户更新.NET
我正在使用.NET框架开发一些生产软件。我真的很希望能够在该项目上使用LINQ。我相信它需要.NET 3.5版(如果我输入错了,请纠正我)。此应用程序是商业软件应用程序,需要在客户端的工作PC上运行。假设他们拥有.NET 3.5,还是假设他们不介意升级到最新版本,是否合理?
我只是想了解在强制框架升级以运行应用程序方面的共识。
解决方案
签出:LinqBridge
只要我们知道不需要支持Windows 2000或者任何较旧的Windows版本,那么就需要最新最好的框架版本就不会感到太繁琐。
一些较不幸运的开发人员会使用较旧的框架版本,因为他们需要支持较旧的OS版本。
由于.NET Framework本身是免费分发的,因此人们很少反对对其进行升级。但是,系统管理员可用性或者安装方面可能存在问题。
我要说的是,假设他们拥有.NET 3.5是不安全的。
在升级时,他们极不可能出现任何问题,更改任何事物总是会带来风险。我知道我不介意升级,但我是一名开发人员。
我认为这是可以同时进行的事情之一,他们或者不会三思而后行,而只是升级,否则可能会引起问题。我认为这将取决于客户,"低技术"客户可能会三思而后行,因为他们可能无法完全理解它,这会使他们感到紧张。
.Net 3.5尚未在Windows PC上自动更新,我不会打赌"按原样"拥有它的标准客户。
注意,我们可能必须决定是否要使用.Net3.5 SP1,因为3.5和3.5SP1之间存在一个小的DataSet向后不兼容(也许还有一些我没有看到的)。
如果客户是一家大公司,则可能要考虑他们通常非常保守(我的客户仍然是XP / IE6,有时甚至是W2K / IE6)。
与副总裁交谈销售。严重地。如果3.5是最前沿(我真的不知道),那么他/她不太会喜欢这个主意。如果已经有两年了,那么他们会更加接受。作为强制第三方软件升级的产品,这并不是无法克服的缺点,但这无济于事。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。#######。
这取决于目标受众和应用程序的重要性。通常来说,此时我们可能无法假设受众已经拥有.NET 3.5. 安装它们可能需要花费相当长的时间,并且如果他们还没有.NET 3.5的其他准备工作,可能会非常繁琐。
因此,除非它是相当全面和/或者重要的企业软件,否则我强烈建议不要这样做。
如我们所说,要使用LINQ,我们需要拥有.NET 3.5. 只是为了确认这一点,LINQ的维基百科页面上说:
Language Integrated Query (LINQ, pronounced "link") is a Microsoft .NET Framework component that adds native data querying capabilities to .NET languages using a syntax reminiscent of SQL. Many of the concepts that LINQ has introduced were originally tested in Microsoft's Cω research project. LINQ was released as a part of .NET Framework 3.5 on November 19, 2007.
由于计算机可能已经安装了某些.NET的早期版本,因此我们可能会发现该站点(Scott Hanselman(Microsoft员工)的Smallest Dot NET)非常有用。它计算出我们需要最新的最小更新(当前为3.5 SP1)。
至于在客户端计算机上期望它是否合理,我想这取决于我们正在创建什么。我的感觉是:
小型低成本应用程序=还没有PERHAPS
一个价格低廉,可能定位于3.5的微型应用程序还为时过早,由于烦人因素,它可能会减小受众群体的规模。
大型商业应用,带有安装程序=是
如果是大型商业应用程序(基准规格已经是WInXP或者更新的.NET 2.0运行),我认为客户不会在意。将可再发行文件放在安装程序磁盘上!
请记住,采用新技术应该出于多种原因。我们对使用LINQ有什么需求,很难复制吗?如果LINQ为我们提供了我们真正需要的功能,那么选择它可能会从成本和时间表中受益。公司可以通过减少销售产品或者增加利润来获得收益。
正如Nescio指出的,最后一个选择是,如果我们需要的只是Linq to Objects(例如,我们不需要Linq to SQL或者Linq to XML),那么LinqBridge可能是一个选择。
请注意,2.0以上的任何框架均不支持Windows 2000。因此,应用程序将仅支持以下操作系统:
- Microsoft Windows XP
- Microsoft Windows Server 2003
- Windows Vista
- Windows Server 2008
祝你好运!
我们应该阅读Hanselman的条目:http://www.hanselman.com/blog/SmallestDotNetOnTheSizeOfTheNETFramework.aspx
如果要安装并因此最小化.NET Framework的安装大小,这真的很有趣。它应该以某种方式回答问题。