SupportedAddressingMode 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定服务是否支持仅向匿名地址或仅向非匿名地址发送响应,或二者都支持。
public enum class SupportedAddressingMode
public enum SupportedAddressingMode
type SupportedAddressingMode =
Public Enum SupportedAddressingMode
- 继承
字段
Anonymous | 0 | 服务器仅支持匿名地址,客户端必须提供匿名响应地址。 |
Mixed | 2 | 服务器同时支持匿名地址和非匿名地址,客户端可以选择使用其中一个或者全部。 |
NonAnonymous | 1 | 服务器仅支持非匿名地址,客户端必须提供非匿名响应地址。 |
注解
此枚举用于指定服务器的功能,而服务器会对其客户端有一定要求。
Windows Communication Foundation (WCF) 具有各种寻址控件,用于指定消息的发送位置。 例如,消息目标的逻辑 To 地址、传输使用的物理(“Via”)地址(服务侦听地址),以及提供客户端终结点地址的终结点 ReplyTo 地址。
大多数基本情况下,如果双方仅在相互之间交换消息,则不必单独指定这些地址。 但是交换过程可能涉及其他消息目标,因此您必须能够在需要明确提供地址时指定这些地址。 即使仅在双方之间,有时也需要此功能,正如在使用双向 HTTP 的情况中,服务器必须创建自己的 HTTP 请求。 SupportedAddressingMode 枚举定义了下列关系种类,用以捕获这些消息模式:
匿名地址是寻址的最基本形式。 如果响应有默认路径,则会使用匿名寻址。 TCP 是双向通信传输协议,且 TCP 消息的响应可发送回发送原始消息的套接字的另一端。 同样,HTTP 的请求-答复模式会通过 HTTP 回复通道发送响应。 这些响应都不要求指定响应消息的去向。 当服务器需要来自客户端的匿名响应时,它使用 枚举的 Anonymous 值。 WCF 系统提供的 NetTcpBinding和 BasicHttpBindingWSHttpBinding 绑定始终使用匿名地址。
发送响应需要创建新的通信通道时,将使用非非匿名地址。 WCF 系统提供的 WSDualHttpBinding 绑定使用 NonAnonymous 地址。 使用双向 HTTP 时,客户端会创建 HTTP 请求来发送消息,服务器随后必须创建自己的 HTTP 请求来发送响应。 由于服务器要启动发送,所以它必须有一个特定的终结点才能建立连接。 您必须为服务器提供用于响应的终结点地址。 同样,如果服务必须响应它收到的单向消息,则它还需要一个 NonAnonymous 地址,因为没有可用于通信的后向通道。 如果服务器要发回消息,则需要一个完全不同于用来发送第一个消息的单独操作。
混合是第三种寻址形式,它将匿名和非匿名地址组合在一起,具体取决于要发送的消息。 混合模式寻址的典型示例是使用专用计算机来处理错误或确认消息。 如果答复的标准交换序列为 HTTP 或 TCP,则响应使用匿名寻址,但错误使用非匿名寻址。 虽然 WCF 在其标准绑定之一中不提供混合寻址功能,但可以编写一个通道,允许服务在响应地址为匿名) 时直接在反向通道 (发送响应,或者当响应地址为 NonAnonymous) 时,在单独的通道 (发送响应。 在这种情况下,通道的绑定元素用于将 设置为 SupportedAddressingMode Mixed。