【问题标题】:Connection refused error when connecting a WCF to a Xamarin.Android project将 WCF 连接到 Xamarin.Android 项目时出现连接被拒绝错误
【发布时间】:2019-01-12 22:40:06
【问题描述】:

所以我是 Xamarin 和 WCF 的新手。但是,这不会阻止我使用这些新技术!无论如何,我从本教程开始: https://docs.microsoft.com/en-us/xamarin/cross-platform/data-cloud/web-services/walkthrough-working-with-wcf

我一步一步地跟着它没有用(构建项目时出现许多错误)。然后我决定将示例代码用于此处提供的相同教程: https://developer.xamarin.com/samples/mobile/WCF-Walkthrough/

(点击右上角的下载)。

运行此项目(Android 部分)时,我收到错误“连接被拒绝”。我猜这是即使没有找到 WCF 也会出现的一般错误消息(因为我更改了配置以测试该理论)。

谁能帮我解决这个错误?

其他注意事项:

我已关闭防火墙(以防万一)。 根据教程,我做了所有的 IIS 更改。我还对 application.config 文件进行了更改,使其包含我的 IP 地址。 我已经坚持了3天了。 解决这个错误非常有用,因为使用该教程的任何其他人也可以实际使项目正常运行。

提前致谢!

【问题讨论】:

  • 那么你是从实际设备还是模拟器上绑定这个
  • 你能从 WctTestClient 连接到你的 WCF 端点吗
  • 我正在使用模拟器。是的,我可以从 WcfTestClient 连接到 WCF 端点(通过选择 HelloWorldService 作为启动项目,我还可以运行和测试 WCF,它可以工作)

标签: c# android wcf xamarin.android


【解决方案1】:

当你使用模拟器时,你不能只参考LocalHostLocalhost 是指运行代码的设备,在本例中是模拟器。

如果要引用运行Android模拟器的计算机,请改用IP地址10.0.2.2

更多信息在这里

Set up Android Emulator networking

【讨论】:

  • 感谢您的回答。我在三个地方(app.config、applicationhost.config 和 MainActivity.cs)进行了更改。我现在收到一条新的错误消息,实际上得到不同的结果令人欣慰。新错误是:反序列化操作“SayHelloTo”的请求消息正文时出错。 OperationFormatter 遇到无效的消息正文。预计会找到名称为“SayHelloTo”和命名空间“tempuri.org”的节点类型“元素”。找到名称为“SayHelloToAsync”和命名空间“tempuri.org”的节点类型“元素”
  • @james,我可以建议用新错误提出一个新问题,否则我们可能整天都在追这个问题,除非您认为它与上述答案不起作用
  • 会的。再次感谢。
  • 出于最终目的,这就是解决方案!我只需要使用 svcutil.exe 来重新创建references.cs 文件。如何将您的答案标记为正确答案并“关闭”此问题?
  • @JamesCarter 点赞,然后点击任务旁边的勾,很高兴它成功了
猜你喜欢
  • 2019-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-25
  • 1970-01-01
相关资源
最近更新 更多