首页 > 解决方案 > 将 Xamarin .net 标准 2.0 解决方案升级到 .net 核心或 .net 5 选项/路径?

问题描述

我们有一个带有 iOS 和 Android 项目的 .net 标准 2.0 Xamarin 解决方案。

在一个稍微不相关的说明中,我一直在尝试修复一些警告,但没有成功,建议升级 .net 核心。

但是,我不确定 .net 核心是否是正确的选择,或者是否有更好的 .net 5。我什至不确定 .net 标准 2.0 是否那么旧。

我们使用 mac,不能使用.NET Portability Analyzer

我也尝试过try-convert这给了我以下...

Xamarin.Forms.props
Xamarin.Build.Download.props
Xamarin.iOS.CSharp.targets
Microsoft.Bcl.Build.targets
NETStandard.Library.targets
Xamarin.Firebase.iOS.Core.targets
Xamarin.Firebase.iOS.Analytics.targets
Xamarin.Build.Download.targets
Xamarin.Forms.targets
SkiaSharp.targets
HarfBuzzSharp.targets

我从 2017 年也看到了这一点,在那里我试图简单地改变TargetFramework只是为了看看会发生什么,但得到了几个错误,比如Project targets 'netcoreapp3.1'. It cannot be referenced by a project that targets 'Xamarin.iOS,Version=v1.0'

Tbh 我不知道从哪里开始,我们的选择是什么。

我看到的升级指南都不是最新的或与 Xamarin 相关的,或者在带有 Visual Studio for Mac 的 Mac 上可能。

在 Mac 上,这似乎是一个真正的雷区,工具有限。

编辑:如果我尝试创建一个新的 Xamarin 解决方案,它不使用 .net 核心,仍然使用 .net 标准 2.0,我认为描述了微软的意图。

标签: visual-studioxamarinxamarin.androidxamarin.iosvisual-studio-mac

解决方案


坚持使用 .NET Standard 2.0,直到 .NET 6.0 发布。正如 .NET 5.0 公告博客文章中所宣布的那样:https ://devblogs.microsoft.com/dotnet/announcing-net-5-0/

我们还在 5.0 中完成了许多早期工作,以便 Xamarin 开发人员在我们发布 .NET 6.0 时可以使用统一的 .NET 平台。

因此,.NET 5.0 不是针对 Xamarin 特定目标的项目的可行升级路径。


推荐阅读