2011-10-18 35 views
1

有誰知道爲什麼.NET Framework版本4分爲客戶端配置文件和擴展?爲什麼.NET Framework 4分爲兩部分?

微軟舉了兩個原因有客戶檔案 >

可單獨提供服務。不需要.NET框架的.NET Framework 4擴展組件。

這些對我來說似乎很脆弱,我需要解釋爲什麼我想在客戶端桌面上安裝Client Profile和Extended。我現在最好的答案是「我不知道爲什麼微軟將他們分開」

+1

客戶端配置文件要小得多。 –

+0

.NET 4客戶端配置文件是48MB,.NET 4 Full是41MB - 只有7MB的差異。 請參閱http://www.hanselman.com/blog/TowardsASmallerNET4DetailsOnTheClientProfileAndDownloadingNET.aspx –

+1

下面是一個類似的問題,其中更深入一點的區別。 http://stackoverflow.com/questions/2759228/difference-between-net-4-client-profile-and-full-framework-download此外,在我看來,擴展(或完整)框架主要是在服務器上需要,而不是客戶端機器。 – Mark

回答

6

您的客戶端應用程序實際上是否需要「完整」框架?如果不是,只安裝客戶端部分 - 這將會小得多。這是擁有單獨配置文件的重點;對於僅使用客戶端應用程序通常需要的框架部分的應用程序來說,它的安裝空間和下載時間更短。

+0

這也是我的理解(因爲它是有限的),客戶端配置文件目標更符合Silverlight應用程序,這將更符合WinRT開發。如果某些事情可以保留在客戶檔案的範圍內,那麼它更容易保持它向前移動(當然,除非事情發生變化)。 – David

+2

@David:嗯,不是真的 - 客戶端配置文件仍然包含同步IO,完整的WPF和WinForms等,據我所知。 –

+0

我真的不知道我是否需要它。我目前有一個針對Framework 3.5的應用程序。從理論上講,我不需要擴展任何東西,但是我怎麼知道確實沒有升級到4.0,這會有點痛苦。 –

-2

由於客戶端配置文件更容易加載,並且僅包含客戶端應用程序的常用功能。

很容易理解,程序加載和運行速度更快,而且佔用內存更少。

+3

呃?CLR將只加載所需的程序集。性能與此無關。 –

+0

嘗試編寫一個引用20個隨機程序集的程序,並在兩個FW版本的WinXP上運行它。如果花時間的話,CP會更快。幾乎很明顯,只有引用的程序集會在啓動時加載,我不是在談論這個。 – AlQafir

3

客戶端配置文件以.Net 3.5sp1開頭。在這一點上,.Net已經增長了巨大的 :(對於常見部署,高達350Mb,儘管60Mb和230Mb更常見)......足夠大以至於通過網絡部署通常很慢並且很麻煩。因此,對於sp1,他們引入了客戶資料。這從技術角度來看是有效的。他們能夠成功地分發框架的一部分,並且開發人員可以安全地定位框架的這一部分。不幸的是,對於3.5的客戶端配置文件未能以有意義的方式減少部署大小。是的,客戶資料較小,甚至更小,但仍然太大,以至於無法與Web部署方案一起使用。

現在使用.Net 4,客戶端配置文件已降至50Mb。這仍然有點大,但是這個新的尺寸,加上平均寬帶速度的提高,更加合理。