【问题标题】:Referencing web services on test and live servers from .Net application从 .Net 应用程序引用测试和实时服务器上的 Web 服务
【发布时间】:2012-04-08 23:39:57
【问题描述】:

我有一个 .net 网络应用程序,它引用了网络服务。

我将 Web 服务发布到 http://myTestServer/service1.asmx,然后添加了对 .net 应用程序的引用。

Web 服务访问 myTestServer 上的测试数据库。

当我想将 Web 应用程序发布到 myLiveServer - 已经将访问“实时数据库”的 Web 服务版本发布到 http://myLiveServer/service1.asmx - 我如何更改它以便 Web 应用程序引用正确的 Web 服务 - 取决于关于我是发布到测试服务器还是实时服务器?

对于连接字符串之类的内容,很容易更改键以引用正确的服务器/数据库。但是您如何为 Web 服务引用执行此操作?

【问题讨论】:

  • 你不应该使用 ASMX,你应该使用新的 WCF...ASMX 已被弃用,不推荐用于未来的开发。这是假设您现在正在创建一个新的 Web 服务,而不是修改现有的古老 Web 服务。

标签: .net visual-studio-2010 web-services


【解决方案1】:

您更改它的方式与连接字符串的方式相同——也就是说,在 web.config 中,或者如果您愿意,也可以通过编程方式进行更改。在 web.config 中,地址位于 system.serviceModel/client/endpoint 下。

<system.serviceModel>
    <client>
        <endpoint address="service URL" name="MyService" />
    ...

您可以通过编程方式修改客户端代理类的 Endpoint.Address 属性。

var client = new ServiceReference.MyServiceSoapClient();
client.Endpoint.Address = new EndpointAddress("service URL");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-31
    • 2010-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-28
    相关资源
    最近更新 更多