欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

VS程序发布之NetFramework版本选择

程序员文章站 2022-08-21 08:49:57
VS程序发布之NetFramework版本选择 一、NetFramework框架简介二、NetFramework版本及支持的系统版本三、VS项目net版本降级参考文档 一、NetFramework框架...

VS程序发布之NetFramework版本选择


一、NetFramework框架简介

.NET Framework 是一个可以快速开发、部署网站服务及应用程序的开回发平台,是 Windows 中的一个组件,包括公共语言运行时(Common Language Runtime, CLR)虚拟执行系统和 .NET Framework 类库。.NET Framework 的体系结构如下图所示:
VS程序发布之NetFramework版本选择

.NET Framework的优点:
1)面向对象的开发环境。【CLR、BLR和C#被设计得完全面向对象;为本地程序和分布式系统提供一致的、面向对象的编程模型;】
2)自动垃圾收集(Garbage Collection,GC)。【GC自动从内存中删除程序不在访问的对象】
4)互操作性。【不同.NET语言编写的软件模块无缝交互;平台调用(platform invoke,P/Incoke)的特性;允许与COM进行交互】
4)不需要COM(Component Object Model,组件对象模型)。
5)简化的部署。【.NET程序不需要使用注册表注册;并行执行特性】
6)类型安全性。【CLR检查并确保参数及其它数据对的类型安全】
7)基类库(Base Class Library,基类库)。有时称为框架类库(Framework Class Library,FCL)。【包括通用基础类、集合类、线程和同步类、XML类】

二、NetFramework版本及支持的系统版本

NetFramework版本历史,与VS和Windows之间的关系见微软官方文档,其中要注意的是:
net4.0是支持WindowsXP系统的最高版本,之后的版本4.5及更高版本不再支持WindowsXP系统。而以net为框架编译的程序集或可执行文件,可以在已安装更高版本net的计算机上运行,而不能在低版本的计算机上运行。
所以在选择项目框架时,要根据目标计算机的系统版本和所要引用程序包支持的net版本来综合考虑。例如目标计算机是XP系统,那么就不能使用net4.5版本及以上的版本,在使用nuget下载程序包时,就需要选择支持net4.0版本及以下的程序包版本。

三、VS项目net版本降级

如果一开始创建项目时选择的net版本过高,后面发布程序时需要降级,以在visual stdio 2019操作为例,
首先点击vs菜单栏中项目子菜单,选择最后一项项目属性,打开项目属性对话框,在目标框架处选择需要的net版本,如下图所示:
VS程序发布之NetFramework版本选择
然后依次选择菜单栏工具=》NuGet包管理器(N)=》管理解决方案NuGet程序包(N),打开nuget程序包安装管理界面,检查已安装的程序包所依赖的net版本中是否包含降级后的低版本net,如果不包含,那么就需要对程序包进行降级安装,甚至卸载。
最后对建立的setup项目(程序打包发布需建立一个setup project,详细操作见文章下方参考文档)属性进行操作,
1、单击setup项目名称,右键选择属性,打开属性对话框,如下图所示:
VS程序发布之NetFramework版本选择
选择Prerequisites,打开系统必备对话框,如下图所示:
VS程序发布之NetFramework版本选择
取消降级之前的net版本的勾选框,否则即使降级之后重新生成安装包,在安装时也仍会提示安装高版本的net。
2、单击setup项目名称,右键选择View——启动条件,如下图所示,单击netFramework,在vs程序界面右下角属性中,选择Version为降级后的版本。
VS程序发布之NetFramework版本选择
VS程序发布之NetFramework版本选择

最后重新生成安装包即可。