在Monotouch中没有调用GetWriterForMessage() - 是否有解决方法?

时间:2012-02-03 12:35:14

标签: web-services soap mono xamarin.ios asmx

我已将一些代码从Windows应用程序移植到Monotouch。 它使用ASMX Web服务与某些API进行通信。 Monotouch 5上的代码失败,因为方法

System.Web.Services.Protocols.SoapHttpClientProtocol.GetWriterForMessage()
永远不会打电话给

我在Mono you will even get a NotImplementedExeption中看到过,但在Monotouch中没有看到。它只是被忽略了。

我需要找到解决这个问题的方法。我必须添加自定义标头才能使解决方案正常工作。 任何变通办法或者甚至有可能很快就会解决这个问题? (我还提交了一份错误报告,但我在这里问,因为我正在拼命寻找解决方法)。

修改 我找到了一种解决方法,但使用它非常烦人。 在自动生成的参考文件中,您必须使用

装饰每个方法
[SoapHeader( "SessionKeyHeader", Direction = System.Web.Services.Protocols.SoapHeaderDirection.InOut )]

然后实现自定义soap头类,但跳过GetXmlWriter()方法。

1 个答案:

答案 0 :(得分:0)

Xamarin已就此问题提交了一个错误。