因此,windows具有不同版本的.net框架,1.0,1.1,2.0,3.0,3.5以及特定框架的Service Pack。 现在我的windows有几个版本的所述框架,让我困惑的是这些是可以卸载还是可安装的?我可以删除旧版本吗?如果我只是使用说和3.5和4.0的ASP.NET和Visual Studio?
还有一个问题,Windows是否依赖.net框架?我的意思是如果它没有任何.net框架我的机器可以工作吗? :)
答案 0 :(得分:1)
如果您安装了最新的框架(4.0),则无需安装previos版本。我不确定您是否可以在安装最新框架后删除已安装的previos版本:我不确定添加/删除程序控制面板小程序是否显示该版本。
第二个问题:Windows Vista和Windows 7中的应用程序很少依赖于.NET框架,但Windows本身却没有。
答案 1 :(得分:1)
虽然.NET框架的不同版本是独立的,但某些应用程序要求它们都存在于计算机上:
如果您在Windows XP或Windows Server 2003上安装Microsoft XPS Viewer(需要Microsoft .NET Framework 3.0)并且未安装以前版本的.NET Framework(1.1和2.0),则会要求您下载它们在安装过程中。 (45 MB)
XP肯定没有 - 它早于.NET几年。还有一个问题,Windows是否依赖.net框架?我的意思是如果它没有任何.net框架我的机器可以工作吗? :)
Vista和Windows 7包含.NET 3,因此从某种意义上说它们确实依赖于它,但是因为它是一个你可以关闭的功能(感谢MainMa)没有。
答案 2 :(得分:1)
阅读答案,我觉得这个话题很混乱,所以会尽量给出答案。
首先,您对.NET Framework的版本有何看法?事实上,它可能意味着几件事:
添加/删除程序(在Windows 7下的程序和功能中卸载程序)控制面板项目中的内容或打开或关闭Windows功能
列表中的内容。已安装组件的集合。
当您要安装.NET Framework时,您将从Microsoft网站下载的安装程序可执行文件。
CLR。请参阅 Nate Bross 对此页面上 simendsjo 发布的答案的详细评论。
根据.NET Framework版本的含义,答案会有所不同。
在卸载程序和打开或关闭Windows功能中,您可能会找到一个或两个最新版本。目前,我将.NET Framework 3.5.1作为“Windows功能”,将.NET Framework 4.0作为“卸载程序”。我不希望这里有任何其他版本,因为为.NET Framework 2.0编译的程序将在使用.NET Framework 3.5的计算机上正常运行。作为证明,编译一个面向.NET Framework 2.0的Hello World并启动它:它开始。
在C:\Windows\Microsoft.NET\Framework
中,您宁愿找到从1.0.3705到4.0的每个版本。为什么?因为每个新版本的框架都会为旧版本添加功能,而不是重写所有内容。在这里,我强烈建议不要删除目录 v2.0.50727 。可能最近用Visual Studio 2010编写并编译为使用.NET Framework 4.0运行的程序仍然需要2.0组件。
下载.NET Framework安装程序可执行文件时,您不必考虑旧版本,也不必将每个版本从1.0下载到4.0。只下载最新的一个,没关系。
注意:必须了解不同版本不是独立版本,而是更改或添加旧版本的内容。这就是有关.NET Framework程序集的引用的所有内容。例如,您可能会遇到一种奇怪的情况:使用WCF的基本应用程序(WCF在.NET 3.0中发布)在仅安装了.NET Framework 2.0但仍崩溃的计算机上运行良好尝试执行与WCF相关的内容:程序集按需加载,因此在您需要.NET Framework 3.0中的组件之前,将使用旧版本的组件。
希望这会让事情变得更容易理解。
还有一个问题,Windows是否依赖 在.net框架上?我的意思是我的 机器工作,如果它没有任何 .net框架? :)
操作系统本身不需要.NET Framework正常运行。但是有些组件需要.NET Framework。正如ChrisF所说, Microsoft XPS Viewer / Printer 就是一个例子。 Microsoft Live Writer 是另一个。
答案 3 :(得分:0)
刚刚找到this
注意大多数情况下,您可以使用最新版本的.NET Framework来运行使用早期版本的.NET Framework创建的应用程序。
所以我认为离开他们是最好的。但话又说回来......你安装了多少个1.0程序? :)
答案 4 :(得分:0)
如果我没记错的话3.5版需要2.0和3.0。
4.0可以自己存在。
我认为1.1也取决于1.0。
我知道XP肯定不依赖任何.NET框架来运行,但我不确定Vista / 7
编辑:
刚刚对XP虚拟机进行了一些测试。有趣的结果......只安装了2.0和4.0,我就可以运行一个编译为3.5的控制台应用程序。如果我使用LINQ(或者我怀疑任何库不在2.0中),它会在调用方法时崩溃。如果未调用使用LINQ的代码,则不会崩溃。
只安装了4.0而没有其他内容,同一个应用程序在运行时会显示以下消息:
首先运行此应用程序 必须安装以下之一 .NET Framework的版本:
V2.0.50727
您要下载并安装吗? .NET的版本v2.0.50727 框架现在?
单击是会打开页面以下载.NET ...除了它是.NET 4.0下载页面......