gpt4 book ai didi

xamarin - 无法加载从 Cirrious.MvvmCross.dll 引用的 MvvmCross 程序集 : System

转载 作者:行者123 更新时间:2023-12-04 18:45:00 26 4
gpt4 key购买 nike

我正在尝试设置一个 MvvmCross 应用程序项目并对其运行单元测试(即其中的 View 模型)。我在 OS X 上使用 Xamarin Studio(v. 4.0.4,在撰写本文时最新版本)。

MvvmCross App 被设置为一个可移植的类库。测试程序集设置为引用 NUnit 框架的普通 Mono/.Net 程序集(不是 PCL)。

尝试执行测试时,它们失败并显示 System.TypeLoadException .

我已经用 Mono binding log 运行了测试在。这是输出:

Mono: The following assembly referenced from /Users/jr/dev/rowinginmotion-cross/RowingInMotion.Mobile.BoatApp.Tests/bin/Debug/Cirrious.MvvmCross.dll could not be loaded: Assembly: System (assemblyref_index=3) Version: 2.0.5.0 Public Key: 7cec85d7bea7798e System error: Invalid argument

Mono: Failed to load assembly Cirrious.MvvmCross[0x559960]

Mono: Could not load file or assembly 'System, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes' or one of its dependencies.



是否不支持此测试设置=

最佳答案

此问题与 Xamarin 和 Mono 尚未正确支持可移植类库的事实有关 - 相反,它们根据您加载的 Mono 版本(Xamarin.Android、Xamarin.iOS 等)编译和链接本地固定程序集- 见 http://slodge.blogspot.co.uk/2013/01/almost-portable-binaries.html了解更多信息。

在 Windows 上,您可以使用 BindingRedirect 解决这个问题。功能,但我还没有找到任何方法来解决在 Xamarin 环境中使用 XBuild 的问题(例如,在 http://forums.xamarin.com/discussion/3733/playing-with-pcls 上查看我的 PCL 和 Mac 问题)

我可以看到当前在完整的 .Mac (.Net) 项目中加载此代码的唯一方法是使用 Xamarin 推荐的文件链接方法 - 复制项目文件并专门针对适当的目标编译副本。

希望这很快就会改变——因为官方 PCL 支持将在 future 几天和几周内以 alpha 的形式提供。

关于xamarin - 无法加载从 Cirrious.MvvmCross.dll 引用的 MvvmCross 程序集 : System,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16442323/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com