簡體   English   中英

*正在運行的框架版本*和運行時運行的*版本*之間有什么區別?

[英]What is the difference between *which version of the framework is running* and *which version of the runtime is running*?

在這篇文章中 ,@ kbrimington提到框架正在運行的 版本與正在運行的運行時版本之間存在細微差別。

有什么區別?

這是一個快速細分,可能會為您提供所需的信息。 這可能令人困惑,但值得花時間去理解這三者之間的差異以及它們之間的差異和相互關系。

CLR    .NET    C#  
----   ----    ----  
1.0    1.0     1.0  
1.0    1.1     1.0  
2.0    2.0     2.0  
2.0    3.0     3.0  
2.0    3.5     3.0  
4.0    4.0     4.0  
4.0    4.5     5.0

.NET框架是描述可用類的框架。 所以框架的版本告訴你哪些類可用。

運行時(CLR)是執行代碼的部分,它是一個虛擬機,它將已編譯的應用程序(MSIL)轉換為可在主機操作系統上執行的字節代碼。

在Visual Studio 2008或2010中進行開發時,您可以選擇要使用的.Net框架版本。 這稱為多目標定位 ,如此此處所述

Visual Studio的多目標功能允許您指定應用程序所需的.NET Framework的特定版本或配置文件。 多目標的主要好處是您可以使用當前版本的Visual Studio來創建和開發針對早期版本的.NET Framework的項目。 例如,您可以繼續開發在Visual Studio 2005和Visual Studio 2008中創建的項目,而無需添加新的.NET Framework依賴項。 多目標有助於確保應用程序僅使用指定.NET Framework版本中提供的功能。 此外,多目標使您可以繼續部署較舊的應用程序,而無需在部署包中添加新的.NET Framework版本。

在Visual Studio 2008中.Net 3.5上編譯的應用程序將使用Visual Studio 2010中.Net 3.5上編譯的同一應用程序的不同版本的運行時。

這意味着,當您支持或增強使用舊版本的.Net或Visual Studio編寫的應用程序時,您仍然可以在較新版本的Visual Studio中進行該開發,並利用較新的功能。

重要的是.NET版本是並排安裝還是更新現有版本。 Verions 1.0,1.1,2.0和4.0是並排版本。 3.0,3.5,3.5SP1和即將發布的4.5是現有2.0和4.0版本的更新。 並使用相同的CLR版本,即您要詢問的運行時版本 更新添加了額外的程序集。 你不能同時安裝2.0和3.0,3.0更新取代2.0。 獲取更新版本的唯一方法是閱讀注冊表,如您鏈接的問題所示。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM