4

我正在开发 Mono Android Mobile 应用程序。我在我的应用程序中调用我的 WCF 服务,我使用项目菜单的 -> 添加 WebRefernce 选项添加了 wcf 服务。我的问题是当我在设备上运行调用 wcf 服务时出现异常。

例外

{System.Net.WebException:错误:System.Net.HttpWebRequest.EndGetRequestStream (IAsyncResult asyncResult) [0x00000] 中的 NameResolutionFailure:0

在 System.Net.HttpWebRequest.GetRequestStream () [0x00000] in :0 在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (System.String method_name, System.Object[] 参数) [0x00000] in :0 }

我的设备有互联网连接,使用 WiFi 连接来获取和发布数据

和另一种方式

我尝试使用移动数据使用网络连接调用服务,即使用移动网络提供商的互联网连接..这次我遇到了一个不同的例外..

{System.Net.WebException:请求失败,HTTP 状态 404:在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReceiveResponse 处未找到(System.Net.WebResponse 响应,System.Web.Services.Protocols.SoapClientMessage 消息,System.Web .Services.Protocols.SoapExtension[] extensions) [0x00000] in :0 at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke (System.String method_name, System.Object[] parameters) [0x00000] in :0 at AndroidWCFExample。 WirelessService.SAGServer.ProcessSomeUpdate (AndroidWCFExample.WirelessService.WebServicesClient oClientInfo, System.String ParameterInfo) [0x00001] 在 C:\Some Dotnet Examples\AndroidWCFExample\AndroidWCFExample\Web References\WirelessService\Reference.cs:1232 at (wrapper remoting-invoke-带检查)AndroidWCFExample.WirelessService.SAGServer:ProcessSomeUpdate (AndroidWCFExample.EmployeeInfoActivity.button_Click (System.Object sender, System.EventArgs e) [0x0007a] 在 C:\Some Dotnet Examples\AndroidWCFExample\AndroidWCFExample\EmployeeInfoActivity.cs:79 中的 ProcessSomeUpdate (AndroidWCFExample.WirelessService.WebServicesClient,string) }

我正在寻找解决方案来解决这个问题,但没有得到正确的答案。所以请让我知道我需要做什么来修复它。请帮帮我。

当我在 android 模拟器上运行应用程序时,这可以正常工作

在此先感谢.. Sreeni

4

2 回答 2

3

为您的应用设置 Internet 权限,并确保您的设备已连接到 Internet。

于 2017-01-04T06:25:28.247 回答
2

我知道这是一个旧帖子,但面临同样的错误,所以想分享解决方案。

  1. 我发现的最佳解决方案是,当连接 Wifi 时发生该异常时,只是重试我的服务器调用,中间稍微休眠一下。它大部分时间都有效,否则如果第二次调用失败,我会取消请求。
  2. 如果用户的 Wifi 非常不稳定或信号非常低,也会引发此错误。如果根本没有互联网连接,即使连接到 Wifi,也会发生同样的错误。
于 2014-01-30T11:24:16.537 回答