怎么将.NET Framework项目升级为.NET 6(framework,开发技术)

时间:2024-04-29 12:15:38 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

概述

升级条件:

  • Windows 操作系统

  • .NET 6 SDK

  • Visual Studio 2022 17.0 或更高版本

环境准备

①首先是VS2022下载,直接上微软官方网站,下载地址:

https://visualstudio.microsoft.com/zh-hans/downloads/

下载后,在线安装就行,如果之前有vs的其它版本也不用卸载,VS可以多个版本共存,安装的时候.NET 6的运行时默认会勾选安装,

②如果需要单独下载SDK和运行时,可以上微软官网,地址:

.NET SDKs downloads for Visual Studio (microsoft.com)

③安装好以后,可以在window命令窗口确认.NET 6是否安装正常,可以输入:

怎么将.NET Framework项目升级为.NET 6

vs安装完成后,在新建项目时应该已经可以看到.NET6的框架了

.NET Portability Analyzer安装和使用

升级前最好先分析下你的项目依赖的类库是否支持最新的.NET平台,这里可以利用扩展工具.NET Portability Analyzer去完成(仅支持.NET 5以下版本):

怎么将.NET Framework项目升级为.NET 6

扩展工具下载安装完成后,重启VS。在工程或者解决方案的右键菜单中,选择:Portability Analyzer Settings。在配置页面,选择要分析的.net 版本即可。

怎么将.NET Framework项目升级为.NET 6

设置完成后,在VS的工程或者解决方案右键菜单中,选择:Analyze Assembly Portability,然后过一会儿就会出现结果。第二个Sheet页面详细的说明了不支持的API信息。

升级助手介绍和安装

我们之前的应用在 .NET Framework 上运行,现在想将它们移植到 .NET 6。当然你可以选择手动移植,但是更方便的方法是利用微软提供的升级助手去完成这个操作.

首先是升级助手安装,方法很简单,在命令窗口执行:

dotnettoolinstall-gupgrade-assistant

安装成功后,应该如下图所示:

怎么将.NET Framework项目升级为.NET 6

同样地,由于 .NET 升级助手是作为 .NET 工具安装的,因此运行以下命令可以轻松地更新它:

dotnettoolupdate-gupgrade-assistant

项目升级

①分析:.NET 升级助手工具包括一种分析模式,它可以提供有关在升级开始之前可能需要进行的更改的见解。在命令窗口运行upgrade-assistant analyze命令,传入正在升级的项目或解决方案的名称。如下图:

怎么将.NET Framework项目升级为.NET 6

输出中有很多内部诊断信息,但某些信息非常有用。请注意,分析模式指示升级将建议项目以net6.0-windows目标框架名字对象 (net6.0-windows) 为目标。这是因为解决方案引用的项目是 WPF 项目,是一种仅限 Windows 的技术。控制台应用程序可能会获得直接升级到 TFMnet6.0的建议,除非它使用某些特定于 Windows 的库。

如果报告了任何错误或警告,请在开始升级前处理这些错误或警告。

②升级:运行upgrade-assistant upgrade命令,传入正在升级的项目或解决方案的名称。

该工具将运行并显示它将执行的步骤列表。完成每个步骤后,该工具将提供一组命令,让用户应用或跳过下一步或其他选项。按Enter而不选择数字会选择列表中的第一项。

详细步骤可参考官网文档--链接地址:

https://docs.microsoft.com/zh-cn/dotnet/core/porting/upgrade-assistant-wpf-framework

打开项目

升级完成后,选择VS2022打开项目,我旧项目依赖的Caliburn.Micro版本是3.2的不支持.NET 6,它已经自动升级到最高版本

变更项:

①packages.config被迁移到项目.csproj文件;如下图

<ProjectSdk="Microsoft.NET.Sdk"><PropertyGroup><TargetFramework>net6.0-windows</TargetFramework><OutputType>WinExe</OutputType><GenerateAssemblyInfo>false</GenerateAssemblyInfo><UseWPF>true</UseWPF><ImportWindowsDesktopTargets>true</ImportWindowsDesktopTargets></PropertyGroup><ItemGroup><PackageReferenceInclude="Microsoft.CSharp"Version="4.7.0"/><PackageReferenceInclude="System.Data.DataSetExtensions"Version="4.5.0"/><PackageReferenceInclude="Microsoft.DotNet.UpgradeAssistant.Extensions.Default.Analyzers"Version="0.3.310801"><PrivateAssets>all</PrivateAssets></PackageReference><PackageReferenceInclude="Caliburn.Micro"Version="4.0.173"/></ItemGroup></Project>

②Caliburn.Micro:升级到最新支持.NET6的4.0版本;

③AssemblyInfo.cs:程序集版本按理在.NET6 中应该是在项目-》属性中设置,如下图:

怎么将.NET Framework项目升级为.NET 6

但是升级助手升级后没有清理多余的项,那我就手动删除下,最后如下图:

怎么将.NET Framework项目升级为.NET 6

运行项目

怎么将.NET Framework项目升级为.NET 6

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:怎么将.NET Framework项目升级为.NET 6的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:JavaScript可以创建对象吗下一篇:

21 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18