【发布时间】:2019-12-12 16:26:58
【问题描述】:
我下载了示例,并在 https://docs.microsoft.com/en-us/xamarin/xamarin-forms/data-cloud/web-services/asmx 的 Xamarin 表单中完成了“使用 ASP.NET Web 服务 (ASMX)”的教程。如果我从 Visual Studio 运行,Web 服务在浏览器中运行一切正常。如果我将 android 应用程序设为它运行的启动项目,但不会从服务中获取待办事项。我已经制定了防火墙规则,修改了使用 ASP.NET Web 服务 (ASMX),并在您的机器上创建了自签名开发证书。
我坚持的是如何配置您的项目以使用适当的 HttpClient 网络堆栈进行调试构建。有关详细信息,请参阅配置您的项目。
下面的代码去哪里了?我是否在下面的代码中将我的端口更改为 49178?
//设备类 公共静态字符串 BaseAddress = Device.RuntimePlatform == Device.Android ? "https://10.0.2.2:5001" : "https://localhost:5001"; 公共静态字符串 TodoItemsUrl = $"{BaseAddress}/api/todoitems/";
【问题讨论】:
-
端口通常在主机之后...所以你必须改变
5001你也必须使用模拟器因为显然10.0.2.2和localhost在真实设备上都不起作用 -
我正在运行项目,它正在将它发送到模拟器它只是没有点击 web 服务或抛出错误!
-
它只是没有访问网络服务或抛出错误!我们不知道 - 这不是问题......如果你遇到一些错误值得将它们包括在问题中
-
我将简化 Android 应用程序在调试中运行,ASMX Soap 服务在调试中运行。但彼此之间不交流。喜欢通过显示待办事项来展示示例图片!
-
您的网络服务器设置是否允许外部连接?您是否已验证您的 Android 设备/模拟器可以连接到服务器?您是否遇到任何异常或错误?这很可能是网络/连接问题。
标签: c# android xamarin soap android-webservice