2008-09-19 80 views
1

我正在使用C#.NET框架上的一些生产软件。我真的很想在项目上使用LINQ。我相信它需要.NET版本3.5(纠正我,如果我错了)。此应用程序是一个商业软件应用程序,需要在客户的工作PC上运行。假设他们拥有.NET 3.5,或者假设他们不介意升级到最新版本是否合理?要求用户更新.NET

我只是想了解共识是什么,就强制框架升级来运行应用程序。

回答

4

正如你所说,要使用LINQ,你需要有.NET 3.5。只是为了确认这一点,LINQ的维基百科页面称:

语言集成查询(LINQ, 发音为“链接”)是Microsoft .NET Framework组件,增加了原生 数据查询功能到.NET 语言使用SQL的语法让人想起 。 LINQ 引入的许多概念最初都是在Microsoft的Cω研究项目中测试的 。 LINQ作为.NET 框架3.5的一部分发布于2007年11月19日

由于事实,即机器可能有一些已经安装了.NET的早期版本中,你可能会发现这个网站,Smallest Dot NET由Scott Hanselman在(微软员工)是有用的。它计算出您需要更新的最小更新(当前为3.5 SP1)。

至于在客户端的机器上期望它是否合理,我想这取决于您创建的内容。我的感受是:

小型低成本应用=也许不是YET
低价出售,或许是针对3.5的小型应用是早了一点,并可能降低,因为不舒服系数的观众规模。

大型商业应用,安装= YES
如果它是一个大型的商业应用程序(您的基本规范已经WINXP或.NET 2.0更新运行),我不认为客户会关心。将可再发行组件放在安装程序磁盘上!

请记住,采用任何新技术都应该有多种原因。你有什么需要使用LINQ,是否难以复制?如果LINQ为您提供真正需要的功能,您的成本和时间表可能会从选择中受益。您的公司可以通过减少产品销售或提高利润来获得收益。

正如Nescio指出的那样,如果您需要的只是Linq到对象(例如,您不需要Linq to SQL或Linq to XML),那么LinqBridge可能是一个选项。

0

只要你知道,你并不需要支持Windows 2000或Windows老版本则需要最新和最伟大的框架版本不会觉得太麻烦。

一些不太幸运的开发人员坚持使用旧的框架版本,因为他们需要支持较早的操作系统版本。

3

由于.NET Framework本身是免费发布的,人们很少反对升级它。但是,系统管理员可用性或安装问题可能存在问题。

5

我会说假设他们有.NET 3.5并不安全。

在升级过程中,如果非常非常不可能发生任何问题,改变任何东西都会带来风险。我知道我不介意升级,但我是一名开发人员。

我认为这是其中一种可能的方式,他们要么不会三思而已,只能升级,否则他们可能会提出一个问题。我认为这取决于你的客户,'低科技'客户可能会考虑两次,因为他们可能不完全了解它,这会让他们感到紧张。

0

.net 3.5尚未在Windows PC上自动更新,我不会赌一个标准客户“按原样”。

请注意,您可能需要决定是否使用.Net3.5 SP1,因为3.5和3.5SP1之间存在小的DataSet向后不兼容(可能还有一些我没有看到)。

如果你的客户是一家大公司,你可能会考虑他们往往非常保守(我的客户仍然是XP/IE6,有时甚至是W2K/IE6)。

1

与V.P.交谈的销售额。认真。如果3.5是流血的边缘(我真的不知道),那么他/她不会很喜欢这个想法。如果它已经有几年了,那么他们会更加接受。作为强制升级第三方软件的产品并不是不可逾越的缺点,但它无济于事。

1

这取决于你的目标受众和你的应用程序的重要性。一般来说,在这一点上,您可能无法假定您的受众已经拥有.NET 3.5。安装它可能需要很长时间,如果他们还没有.NET 3.5的其他先决条件,可能会非常繁琐。

因此,除非它是一个相当全面和/或重要的企业软件,否则我会强烈反对。

0

当心2.0以上的任何框架都不支持Windows 2000。所以你应用程序将随后仅支持以下操作系统:

  • 的Microsoft Windows XP
  • 的Microsoft Windows Server 2003
  • 的Windows Vista
  • 的Windows Server 2008

祝您好运!