【问题标题】:WCF ServiceContract namespace updateWCF ServiceContract 命名空间更新
【发布时间】:2011-10-04 12:29:29
【问题描述】:

我有以下 WCF 接口:

[ServiceContract]
public interface IUser
{
    [OperationContract]
    string GetUser();
}

我改成这个了:

[ServiceContract(Namespace = "http://user.com")]
public interface IUser
{
    [OperationContract]
    string GetUser();
}

目标 XML 命名空间已从默认 tempuri.org 更改为 user.com

这会中断现有客户端的调用,因为 wsdl 不同。

有没有办法在配置文件中指定这个命名空间?这将帮助我保留现有客户端的旧命名空间并能够升级 WS。

【问题讨论】:

    标签: wcf namespaces servicecontract


    【解决方案1】:

    部署服务时很容易忽略的一个非常诚实的错误。在 msdn 论坛上找到了这个帖子,我认为这可能只是解决问题的方法。

    想法很简单,创建一个新的服务契约接口(使用正确的命名空间),从现有的服务契约继承它(使用默认命名空间)。让您的服务类实现新的服务合同并要求客户端将端点更改为新的服务合同。

    网址:http://social.msdn.microsoft.com/Forums/en/wcf/thread/2bb09d41-7ee7-4e9d-bea8-95bd318a4247

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多