以下是例外:
Exception thrown: 'System.InvalidOperationException' in mscorlib.ni.dll
Additional information: The API 'System.Reflection.MemberInfo.get_MetadataToken()' cannot be used on the current platform. See http://go.microsoft.com/fwlink/?LinkId=248273 for more information.
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
我有一个PCL项目(Profile7),用于常见的Xamarin表单代码。 Android,iOS和UWP项目在同一解决方案中引用PCL。 PCL引用从中抛出异常的第三方库(IdentityModel.OidcClient Nuget包)。 Android项目按预期运行。 UWP项目抛出异常。发生异常是因为在IdentityModel.OidcClient中的日志记录代码中使用了dynamic关键字。我也在作者的Github网站上创建了一个问题(https://github.com/IdentityModel/IdentityModel.OidcClient/issues/43)。
有趣的是,作者有一个直接引用IdentityModel.OidcClient(没有PCL)的示例UWP应用程序,它运行正常。似乎作者的应用程序与我的应用程序之间的区别在于使用PCL。
我已尝试将目标个人资料更改为111,但无济于事。我该如何解决这个问题?
更新
IdentityModel.OidcClient PCL项目使用配置文件259.我将我的PCL项目设置为配置文件259,但异常仍然存在。
答案 0 :(得分:0)
将Visual Studio的Xamarin升级到4.2.719解决了这个问题。无论是那个还是重启。 :)