新的 Xamarin 项目不使用最新的 Xamarin 版本
Posted
技术标签:
【中文标题】新的 Xamarin 项目不使用最新的 Xamarin 版本【英文标题】:New Xamarin project doesn't use the newest Xamarin version 【发布时间】:2020-05-02 04:09:50 【问题描述】:我是 Xamarin 的新手。我通过 Visual Studio Installer 安装了它(我使用的是 Visual Studio 2017)。我注意到当我创建一个新的空白项目时,Xamarin.Forms 的版本是 3.4.0.(...),这是一个相当旧的版本。 我读到 Xamarin.Forms 版本绑定到 Visual Studio 版本,但奇怪的是,我创建这个线程的原因是,在我的第一个教程项目工作时,VS 提示我独立升级我的 Xamarin。这将 Xamarin.Forms 升级到 4.4.0.(...),但仅适用于该项目。新创建的项目仍然有 X.F 3.4.0.(...) 并且它们不会提示我升级。 此外,升级后的项目在页面之间导航时崩溃,但出现以下异常。
System.TypeLoadException:无法从 typeref 解析带有令牌 0100003a 的类型(程序集“Xamarin.Forms.Core,版本=2.0.0.0,文化=中性,PublicKeyToken=null”中的预期类“Xamarin.Forms.NavigableElement”)
我找不到任何关于高于 3.4.0 的 Xamarin.Forms 与 VS17 不兼容的信息,但考虑到异常(相同的源代码在 3.4.0 上运行时可以正常工作)是有意义的。但如果是这样,为什么会提示我升级 Forms?我已经重新安装了 Xamarin,但这并没有改变任何东西。
【问题讨论】:
VS 2019 已经发布,可以先将IDE更新到最新版本(16.4.x) @LucasZhang-MSFT 它在工作计算机上。由于不相关的原因,我一定会使用 VS17(其他人都使用 15,所以我已经在推动它了)。他们正在使用一些过时的软件,例如用于版本控制,带有变通方法。那些必须为 19 重新制作。在我的辩护中,我在我的个人电脑上使用 19 :) 您可以打开nuget管理并更新XF版本。 【参考方案1】:Xamarin.Forms 根本不绑定到 Visual Studio。我相信 Xamarin.android 和 Xamarin.ios 版本是绑定到 Visual Studio 的,但 Xamarin.Forms 只是你更新的一个 nuget 包。
-
在解决方案资源管理器中右键单击解决方案。
选择“管理解决方案的 Nuget 包”。
点击顶部的“更新”标签。
单击 Xamarin.Forms 旁边的复选框。
点击“更新”。
或者,或者,只需单击“全部更新”。
您看到使用旧版本的 Xamarin.Forms 创建项目的原因是用于创建项目的模板是旧的并且不知道 Xamarin.Forms 的新版本。
【讨论】:
删除了我之前的回复。你完全正确。绑定到 VS 版本误解的 Xamarin 版本来自我可能误解的另一个线程。我的问题是我只更新了 Xamarin.Forms 依赖项中的 Xamarin,它没有更新 .Android 或 .iOS。我不知何故错过了解决方案右键单击中的“管理 NuGet”。我发誓我看过那里,但由于某种原因找不到它:) 非常感谢 没问题。很高兴我能提供帮助。以上是关于新的 Xamarin 项目不使用最新的 Xamarin 版本的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin.GooglePlayServices.Ads。破坏了我的项目