将Xamarin Forms升级到.Net Standard 2

时间:2017-10-29 14:51:25

标签: xamarin.forms .net-standard-2.0

我正在尝试将我的Xamarin项目转换为使用.net标准版2.

  • 我添加了.net标准2库
  • 我已经安装了以前存在于我的pcl库中的所有nuget包。 (一切都很好)
  • 然后我删除了pcl并添加了std库

然而,当我构建时,我得到一些编译时异常:

  • 无法加载程序集' IdentityModel,Version = 1.0.0.0,Culture = neutral,PublicKeyToken ='。也许它在Mono for Android配置文件中不存在?
  • 无法加载程序集&XLaes.Forms,Version = 2.0.5782.12218,Culture = neutral,PublicKeyToken ='。也许它在Mono for Android配置文件中不存在?

那些ddl确实不存在于Android bin文件夹中。如果我手动复制dll,则构建错误就会消失。

我不熟悉新的.net标准,以了解这些库是否因为不兼容而未被复制。

我该如何解决这个问题?

编辑:上面的nuget包只添加到公共std和pcl库而不是Android 1.这与pcl版本一起工作,所以我假设与std版本类似。我不得不将它安装到Android版本中以使其工作。为什么有必要在std而不是pcl?

1 个答案:

答案 0 :(得分:1)

您需要将以下NuGet包添加到您的Xamarin.Android项目中:

我不确定为什么PCL实现在Xamarin.Android项目中没有这些包的情况下工作。可能,包创建者正在使用Bait and Switch来实现netstandard。