SupportedAddressingMode 枚举

定义

指定服务是否支持仅向匿名地址或仅向非匿名地址发送响应,或二者都支持。

public enum class SupportedAddressingMode
public enum SupportedAddressingMode
type SupportedAddressingMode = 
Public Enum SupportedAddressingMode
继承
SupportedAddressingMode

字段

Anonymous 0

服务器仅支持匿名地址,客户端必须提供匿名响应地址。

Mixed 2

服务器同时支持匿名地址和非匿名地址,客户端可以选择使用其中一个或者全部。

NonAnonymous 1

服务器仅支持非匿名地址,客户端必须提供非匿名响应地址。

注解

此枚举用于指定服务器的功能,而服务器会对其客户端有一定要求。

Windows Communication Foundation (WCF) 具有各种寻址控件,用于指定消息的发送位置。 例如,消息目标的逻辑 To 地址、传输使用的物理(“Via”)地址(服务侦听地址),以及提供客户端终结点地址的终结点 ReplyTo 地址。

大多数基本情况下,如果双方仅在相互之间交换消息,则不必单独指定这些地址。 但是交换过程可能涉及其他消息目标,因此您必须能够在需要明确提供地址时指定这些地址。 即使仅在双方之间,有时也需要此功能,正如在使用双向 HTTP 的情况中,服务器必须创建自己的 HTTP 请求。 SupportedAddressingMode 枚举定义了下列关系种类,用以捕获这些消息模式:

  • 匿名地址是寻址的最基本形式。 如果响应有默认路径,则会使用匿名寻址。 TCP 是双向通信传输协议,且 TCP 消息的响应可发送回发送原始消息的套接字的另一端。 同样,HTTP 的请求-答复模式会通过 HTTP 回复通道发送响应。 这些响应都不要求指定响应消息的去向。 当服务器需要来自客户端的匿名响应时,它使用 枚举的 Anonymous 值。 WCF 系统提供的 NetTcpBindingBasicHttpBindingWSHttpBinding 绑定始终使用匿名地址。

  • 发送响应需要创建新的通信通道时,将使用非非匿名地址。 WCF 系统提供的 WSDualHttpBinding 绑定使用 NonAnonymous 地址。 使用双向 HTTP 时,客户端会创建 HTTP 请求来发送消息,服务器随后必须创建自己的 HTTP 请求来发送响应。 由于服务器要启动发送,所以它必须有一个特定的终结点才能建立连接。 您必须为服务器提供用于响应的终结点地址。 同样,如果服务必须响应它收到的单向消息,则它还需要一个 NonAnonymous 地址,因为没有可用于通信的后向通道。 如果服务器要发回消息,则需要一个完全不同于用来发送第一个消息的单独操作。

  • 混合是第三种寻址形式,它将匿名和非匿名地址组合在一起,具体取决于要发送的消息。 混合模式寻址的典型示例是使用专用计算机来处理错误或确认消息。 如果答复的标准交换序列为 HTTP 或 TCP,则响应使用匿名寻址,但错误使用非匿名寻址。 虽然 WCF 在其标准绑定之一中不提供混合寻址功能,但可以编写一个通道,允许服务在响应地址为匿名) 时直接在反向通道 (发送响应,或者当响应地址为 NonAnonymous) 时,在单独的通道 (发送响应。 在这种情况下,通道的绑定元素用于将 设置为 SupportedAddressingMode Mixed。

适用于