iPhone硬件上的Monotouch/WCF错误

iPhone硬件上的Monotouch/WCF错误,wcf,xamarin.ios,Wcf,Xamarin.ios,我使用Silverlight SLSvcUtil.exe工具在Monotouch上创建了一个WCF客户端,类似于 在模拟器上一切正常,但当我在iPhone 4S上启动它时,我发现了错误: 尝试JIT编译方法“(包装委托开始调用):仅在使用--aot运行时开始调用\u IAsyncResult\u此\u TimeSpan\u AsyncCallback\u对象(System.TimeSpan,System.AsyncCallback,object)” 有什么想法吗?我已经从monotouch调用了

我使用Silverlight SLSvcUtil.exe工具在Monotouch上创建了一个WCF客户端,类似于

在模拟器上一切正常,但当我在iPhone 4S上启动它时,我发现了错误:

尝试JIT编译方法“(包装委托开始调用):仅在使用--aot运行时开始调用\u IAsyncResult\u此\u TimeSpan\u AsyncCallback\u对象(System.TimeSpan,System.AsyncCallback,object)”


有什么想法吗?

我已经从monotouch调用了一些wcf服务,但没有遇到任何类似的问题,所以可以这样做

monotouch中的jit错误通常表示链接器删除了某些内容,或者调用了某些虚拟抽象方法(至少在我最近的经验中是这样)

你能检查一下你真正的iPhone项目的链接器设置吗?如果将其设置为-nolink-see,问题是否会消失


如果这确实有帮助,那么下一步就是查看wcf生成的文件-在这种情况下,您能找到并发布更多关于回调方法的代码吗?

我从monotouch调用了一些wcf服务,但没有遇到任何类似的问题-因此可以完成

monotouch中的jit错误通常表示链接器删除了某些内容,或者调用了某些虚拟抽象方法(至少在我最近的经验中是这样)

你能检查一下你真正的iPhone项目的链接器设置吗?如果将其设置为-nolink-see,问题是否会消失


如果这确实有帮助,那么下一步就是查看wcf生成的文件-在这种情况下,您能找到并发布更多关于回调方法的代码吗?

此类问题很少与链接器相关,如果签名是包装器,就更不用说了。然而,你可以很容易地按照斯图尔特的指示确认这一点

在我看来,您可能遇到了AOT编译器无法预测所需代码的情况。当混合使用泛型和值类型时会发生这种情况(并且在生成的签名中有一个TimeSpan)。这将在模拟器(使用JIT的地方)上工作,但在AOT应用程序时不起作用


解决此类问题的最佳方法是在打开错误报告并附加一个测试用例,以允许我们复制该问题。

此类问题很少与链接器相关,如果签名是包装器,则更少。然而,你可以很容易地按照斯图尔特的指示确认这一点

在我看来,您可能遇到了AOT编译器无法预测所需代码的情况。当混合使用泛型和值类型时会发生这种情况(并且在生成的签名中有一个TimeSpan)。这将在模拟器(使用JIT的地方)上工作,但在AOT应用程序时不起作用


解决此类问题的最佳方法是在上打开一个bug报告,并附加一个允许我们复制该问题的测试用例。

Thank's!我刚刚解决了从VisualStudio项目复制服务引用的问题,并覆盖了服务和服务频道,如:Thank's!我刚刚解决了从Visual Studio项目复制服务引用并覆盖服务和服务频道的问题,如下所示: