iphone - MonoTouch - System.Reflection.Emit.ModuleBuilder 错误

标签 iphone .net json xamarin.ios ios5

我尝试在 iPhone (IOS 5) 中测试我的应用程序,但收到以下错误。它在模拟器中运行没有任何问题。

我引用了一个外部库(NewtonSoft.Json.Monotouch.dll),它似乎正在使用System.Reflection.Emit.ModuleBuilder。有办法解决这个问题吗?非常感谢任何有关此问题的帮助。

"-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.dll"-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.Xml.dll"-r "/开发人员/MonoTouch/usr/lib/mono/2.1/System.Core.dll"-r "/Developer/MonoTouch/usr/lib/mono/2.1/monotouch.dll"-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.Runtime.Serialization.dll"-r "/Developer/MonoTouch/usr/lib/mono/2.1/System.Web.Services.dll"-r "/Users/test/application/libraries/Newtonsoft。 Json.MonoTouch.dll"-linksdkonly -sdk "5.0"框架是:/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk 已复制 /Users/test/application/bin/iPhone/Release/Unleashed.app 无法链接程序集:Mono.Linker.ResolutionException:无法解析引用:System.Reflection.Emit.ModuleBuilder

谢谢

更新:

好的,我从link下载了最新的NewtonSoft.Json源代码,编译项目并将 dll 放入我的项目中。我仍然有同样的问题。我确实找出了引用 System.Reflection.Emit 的类。它是 Utilities 文件夹中的 DynamicWrapper 类。

我在另一个博客中看到了类似的问题 link 。对问题的答复建议将 Liner 行为设置为“链接所有程序集”。谁能解释一下如何设置?

最佳答案

Newtonsoft.Json.MonoTouch.dll 已知可与 MonoTouch 配合使用。我自己已经看到/编译了许多使用它的应用程序。

您可能使用的是旧版本或错误编译版本的程序集(例如缺少定义)。如果不知道它的起源,很难说它是哪一个。尝试跟踪较新的版本(或编辑您的问题以包含它的来源)。

注意:它与模拟器一起工作的事实是因为使用了不同的 mscorlib.dll 来允许 JITting(而不是 AOTing)托管代码。这使得模拟器构建比设备构建快得多

关于iphone - MonoTouch - System.Reflection.Emit.ModuleBuilder 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8263424/

相关文章:

iphone - 程序在gldrawarray崩溃

iphone - iPhone 4 Retina 显示屏的 colorWithPatternImage (image@2x.png)

c# - 在 ScrollViewer 的子控件上鼠标滚轮不工作

javascript - 如何从输入字段获取值并写入json文件?

jquery Iphone itunes 滚动效果

iphone - 将部分音频文件复制到 iOS 中的新文件中

c# - Registry.GetValue 有什么问题?

c# - 接受 int[] 和 List<int> 的方法

javascript - 康乐福 JSON 解析器如何工作?

java - 使用 Scala 和 Jackson 以及 java.lang.Integer 或 scala.Int 对泛型类型进行奇怪的反序列化问题