【问题标题】:what is the namespace url for in the Service Contract attribute服务合同属性中的命名空间 url 是什么
【发布时间】:2010-05-24 14:27:39
【问题描述】:

在 [Service Contract(Namespace="http://myuri.org/Simple")] 中,命名空间是做什么用的?我已经完成了 WCF 服务,但从未将其包括在内。它的目的是什么?

【问题讨论】:

    标签: .net asp.net wcf


    【解决方案1】:

    命名空间属性实际上是一个 XML 术语。它允许您保持元素的唯一性(类似于 .NET 对命名空间所做的)。因此,您可以拥有多个具有相同标签名称的元素,但只要它们具有不同的命名空间,它们就完全不同。根据MSDNServiceContractAttribute 类的Namespace 属性指的是以下内容:

    “获取或设置 Web 服务描述语言 (WSDL) 中 <portType> 元素的命名空间。”

    【讨论】:

    • +1 表示 MSDN 链接和“唯一性”字样。需要注意的是,Namespace 属性也适用于 WebServices(不仅在具有 ServiceContractAttribute 的 WCF 上):[WebService(Namespace = "organization.service/")]
    【解决方案2】:

    如果您所在的大型组织(例如银行)可能有多个 Web 服务方法(如 GetDerivativeProduct() )的实现,则 D3 声明命名空间尤为重要。

    来自 MSDN 文档:

    强烈建议在 XML Web 服务公开使用之前更改此默认命名空间 http://tempuri.org。这一点很重要,因为必须将 XML Web 服务与可能无意中将命名空间用作默认名称 (http://tempuri.org/) 的其他 XML Web 服务区分开来。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-18
      • 2011-05-08
      • 2011-03-23
      相关资源
      最近更新 更多