WCF 命名空间是否被调用过?
我注意到 WCF 命名空间通常是 URL,但如果您尝试在浏览器中访问它们,它们通常会返回 404。
1) 这些命名空间是否真正被调用过?
2) 如果不是,那为什么它们是 URL?
3) 它们必须是 URL 还是任何字符串都可以?
我所看到的一个例子:
[ServiceContract(
Name="ServcieAContract",
Namespace = "http://www.thatindigogirl.com/samples/2006/06")]
public interface IServiceA
I have noticed that WCF namespaces are usually URLs, but if you try to access them in a browser they typically return 404.
1) Are these namespaces ever really called?
2) If not, then why are they URLs?
3) Do they have to be URLs or would any string do?
An example of what I've seen:
[ServiceContract(
Name="ServcieAContract",
Namespace = "http://www.thatindigogirl.com/samples/2006/06")]
public interface IServiceA
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(3)
¢好甜2024-11-13 14:11:52
1) 它们不应该被调用(尽管它们可能被调用,也许是为了显示文档),但用于识别服务和操作并对其进行版本控制。
http://msdn.microsoft.com/en-us/library/ms733832.aspx
2) 检查 Chris Dickson 的答案
3) 任何字符串都可以,但人们大多坚持带有日期标记名称空间版本的标签格式
http://www.ibm.com/developerworks/xml/library/x-tipnamsp/index.html
~没有更多了~
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
使用 URI 作为 WCF 命名空间名称是一种通常围绕 XML 命名空间发展起来的约定。
命名空间名称可以是任何字符串,但使用 URI 的动机是它更有可能(如果明智地选择)是全局唯一的 - 主机名部分将命名空间与特定组织相关联,然后该组织应该具有在其域内构建唯一命名空间名称的标准。
在某些情况下,选择的 URI 实际上是 URL:也就是说,可以从该地址获取资源 - 通常是文档、模式的副本等。如果命名空间与某些公共接口相关,并且您希望客户能够轻松找到有关其使用的帮助/文档,您可能会考虑这样做。
The use of URIs for WCF namespace names is a convention which grew up around XML namespaces generally.
A namespace name can be any string, but the motivation for using a URI instead is that it is more likely (if chosen sensibly) to be globally unique - the host name part associates the namespace to a particular organisation, and that organisation should then have a standard for constructing unique namespace names within its domain.
In some cases the URI chosen is actually a URL: that is, a resource is obtainable from that address - usually documentation, or a copy of the schema, or such like. You might consider doing this if the namespace relates to some public interface and you want your customers to be able to easily find help/documentation on its usage.