System.IO.FileNotFoundException:无法加载程序集…也许在Mono for Android Profile中不存在?

我在尝试从Visual Studio编译我的Android应用程序时收到以下错误(我正在使用Xamarin插件)。

错误2加载程序集时出现exception:System.IO.FileNotFoundException:无法加载程序集’PresentationUI,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35’。 也许它在Mono for Android配置文件中不存在?

文件名:Xamarin.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference)上的’PresentationUI.dll’

参考,ReaderParameters参数)在Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1

程序集,AssemblyDefinition程序集,布尔topLevel)在Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1

程序集,AssemblyDefinition程序集,布尔topLevel)在Xamarin.Android.Tasks.ResolveAssemblies.Execute()

我环顾四周,发现这个论坛post看起来像一个类似的问题。 我找不到PresentationUI.dll程序集。

有关为什么我会收到此错误以及如何解决此问题的任何建议?

更新

我发现问题实际上来自于使用来自Microsoft.Practices.Prism.dll的DelegateCommand,是因为Xamarin不支持这个程序集吗?

干杯,

PresentationUI是WPF(Windows上的UI框架)的一部分,这在移动平台上是不可用的,例如Xamarin.Android。

您必须重新创建应用程序的移动兼容UI才能准备好Android。

Microsoft将Prism设计为与WPF一起使用,所以是的,你不能在Xamarin.Android项目中使用它。 (Prism最新版本确实与Xamarin Forms一起使用)。

参考: .NET跨平台UI框架

此exception意味着在您的移动项目代码中的某个位置,您使用的是PresentationUI中的WPF部分元素,如上所述,它不能在Xamarin.Android中使用。 只需查看您的代码,并确保您没有使用PresentationUI中的内容。 希望这会有所帮助。