网络参考如何知道使用哪个地址

本文关键字:地址 参考 何知道 网络 | 更新日期: 2023-09-27 18:26:41

我必须从一个新的C#类库项目中调用一个web服务。我还无法访问该web服务(在发布之前,不同的地理位置和封闭的网络)。但是,我确实有WSDL,并且在我的新类库项目中为WSDL添加了一个Web引用。

我的问题是,我不知道在哪里可以配置WSDL所基于的服务地址。目前,使用WSDL存根进行开发是可以的,但当我将其发布到其他开发中心时,他们需要能够为他们的服务设置正确的地址,以便我的服务调用能够工作。

这里有常见的做法吗?即我可以添加的配置文件条目或其他什么?

网络参考如何知道使用哪个地址

如果使用VS添加web引用,它将自动在.config文件中创建相应的设置。

您也可以在Settings.Settings中查看/修改。

注意:默认情况下,VS将此设置设置为生成一个默认值(我相信它是基于用于添加引用的原始值,并且它会隐藏在生成的代码文件中的某个位置)。您可以通过查看项目的"属性-->设置",突出显示WSDL设置,然后在"属性"选项卡(停靠窗口)中设置GenerateDefaultValueInCode=False来禁用此功能。

部署后,可以通过修改相关的.config文件值来更新WSDL位置。


EDIT:"Web引用URL行为"属性应设置为"动态"。

在app.config中查找端点节点,更改不同环境的URL

<configuration>
  <system.serviceModel>
    <bindings>      
       ...
    </bindings>
    <client>
        <endpoint address="#URL#"
            binding="xxx" bindingConfiguration="xxx"
            contract="xxx" name="xxx" />