我们有一个现有的Xamarin。 Forms应用程序,其中解决方案中的所有项目(约8个)均设置为目标框架 .NET Standard 1.4 。 该应用程序是为iOS和UWP构建的。现在,我想将解决方案中的所有项目升级到 .NET Standard 2.0 。
因此,我在每个项目中都更改了目标框架。 iOS版本不再构建。我收到以下错误消息:
无法解析从方法'System.Object FastExpressionCompiler.ExpressionCompiler :: TryCompile(FastExpressionCompiler.ExpressionCompiler / ClosureInfo&,System.Type,System.Type [],引用的'System.Reflection.Emit.DynamicMethod'引用,
然后我做了一些研究,发现了以下主题:
然后我尝试检查所有已安装的NuGet包装:
这些软件包似乎都没有破坏版本,并且该版本也与.NET-Standard 1.4兼容。 在构建过程中,我得到了很多信息:
C:\git\MyApp\Sources\MyApp.Validation\MyApp.Validation.csproj: warning NU1701: Package 'PInvoke.NCrypt 0.3.2' was restored using
'.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
C:\git\MyApp\Sources\MyApp.Validation\MyApp.Validation.csproj : warning NU1701: Package 'SQLiteNetExtensions 2.0.0' was restored using
'.NETFramework,Version=v4.6.1' instead of the project target framework '.NETStandard,Version=v2.0'. This package may not be fully compatible with your project.
我不清楚为什么现在会出现警告...在升级之前,这些软件包还没有链接到.NET-Standard 1.4?!
预先感谢您的帮助。
Fabian