1

我有一个使用 MonoTouch 编写的应用程序,它依赖于 Web 服务 URL 后端。我需要能够在运行时从应用程序内(或从它的设置内)动态设置此后端的 URL。

我在 CodeProject 上阅读了这篇文章,其中描述了动态设置 URL:http: //www.codeproject.com/Articles/12317/How-to-make-your-Web-Reference-proxy-URL-dynamic#_rating

但是我在 MonoDevelop 中找不到这个选项。

我已经尝试更改我的服务的 Url 属性,但似乎还有更多。(具体而言,Web 服务添加的“references.cs”文件似乎也将 URL 硬编码在各种属性中)。

非常感谢任何帮助。

谢谢!

--scotru

4

1 回答 1

1

当 Mono 为您生成 SOAP Web 服务的 C# 包装器时,它会创建 2 个包装器的构造函数。第二个包含 URL 参数,您可以使用它来设置正确的 URL 并在 Web 服务之间切换。

正在生产中的项目示例(文件 Reference.cs):

public partial class ServicesInfoImplService : System.Web.Services.Protocols.SoapHttpClientProtocol
...
        public ServicesInfoImplService() {
            this.Url = "<DEFAULT_URL>";
        }

        public ServicesInfoImplService(string url) {
            this.Url = url;
        }
...
于 2012-08-13T09:43:00.590 回答