2008-09-19 75 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

祝您好運!