IDuplexChannel 接口

定义

定义通道为发送和接收消息而必须实现的接口。

public interface class IDuplexChannel : System::ServiceModel::Channels::IInputChannel, System::ServiceModel::Channels::IOutputChannel
public interface IDuplexChannel : System.ServiceModel.Channels.IInputChannel, System.ServiceModel.Channels.IOutputChannel
type IDuplexChannel = interface
    interface IChannel
    interface ICommunicationObject
    interface IInputChannel
    interface IOutputChannel
type IDuplexChannel = interface
    interface IInputChannel
    interface IOutputChannel
    interface IChannel
    interface ICommunicationObject
type IDuplexChannel = interface
    interface IInputChannel
    interface IChannel
    interface ICommunicationObject
    interface IOutputChannel
type IDuplexChannel = interface
    interface IOutputChannel
    interface IInputChannel
    interface ICommunicationObject
    interface IChannel
Public Interface IDuplexChannel
Implements IInputChannel, IOutputChannel
派生
实现

注解

重要

使用不受信任的数据从实现此接口的类中调用方法存在安全风险。 仅使用受信任的数据从实现此接口的类中调用方法。 有关详细信息,请参阅 “验证所有输入”。

IDuplexChannel 接口是 IInputChannelIOutputChannel 接口的联合。 在实现时,IDuplexChannel 接口不强制要求 IInputChannelIOutputChannel 之间具有任何相关性。 具体说来,这意味着协定不强制要求通过 IInputChannel 接收的消息的发送方与通过 IOutputChannel 发送的消息的接收方相同。

属性

LocalAddress

获取输入通道接收消息的地址。

(继承自 IInputChannel)
RemoteAddress

获取在输出通道上发出的消息将要到达的服务的目标。

(继承自 IOutputChannel)
State

获取面向通信的对象的当前状态。

(继承自 ICommunicationObject)
Via

获取 URI,该 URI 包含输出通道发送消息的目标传输地址。

(继承自 IOutputChannel)

方法

Abort()

使通信对象立即从其当前状态转换到关闭状态。

(继承自 ICommunicationObject)
BeginClose(AsyncCallback, Object)

开始一个异步操作以关闭通信对象。

(继承自 ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

开始一个异步操作以在指定超时内关闭通信对象。

(继承自 ICommunicationObject)
BeginOpen(AsyncCallback, Object)

开始一个异步操作以打开通信对象。

(继承自 ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

开始一个异步操作以在指定时间间隔内打开通信对象。

(继承自 ICommunicationObject)
BeginReceive(AsyncCallback, Object)

开始用于接收消息的异步操作,该操作具有关联的状态对象。

(继承自 IInputChannel)
BeginReceive(TimeSpan, AsyncCallback, Object)

开始用于接收消息的异步操作,该操作具有指定的超时值和状态对象与之关联。

(继承自 IInputChannel)
BeginSend(Message, AsyncCallback, Object)

开始一个异步操作,向输出通道的目标传输一条消息。

(继承自 IOutputChannel)
BeginSend(Message, TimeSpan, AsyncCallback, Object)

开始一个异步操作,在指定时间间隔内向输出通道的目标传输消息。

(继承自 IOutputChannel)
BeginTryReceive(TimeSpan, AsyncCallback, Object)

开始用于接收消息的异步操作,该操作具有指定的超时值和状态对象与之关联。

(继承自 IInputChannel)
BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

开始异步等待消息到达操作,该操作具有指定的超时值和状态对象与之关联。

(继承自 IInputChannel)
Close()

使通信对象从其当前状态转换到关闭状态。

(继承自 ICommunicationObject)
Close(TimeSpan)

使通信对象从其当前状态转换到关闭状态。

(继承自 ICommunicationObject)
EndClose(IAsyncResult)

完成一个异步操作以关闭通信对象。

(继承自 ICommunicationObject)
EndOpen(IAsyncResult)

完成一个异步操作以打开通信对象。

(继承自 ICommunicationObject)
EndReceive(IAsyncResult)

完成用于接收消息的异步操作。

(继承自 IInputChannel)
EndSend(IAsyncResult)

完成一个异步操作,向输出通道的目标传输消息。

(继承自 IOutputChannel)
EndTryReceive(IAsyncResult, Message)

完成用于接收消息的指定异步操作。

(继承自 IInputChannel)
EndWaitForMessage(IAsyncResult)

完成指定的异步等待消息操作。

(继承自 IInputChannel)
GetProperty<T>()

从通道堆栈的适当层返回所请求的类型化对象(如果存在)。

(继承自 IChannel)
Open()

使通信对象从已创建状态转换到已打开状态。

(继承自 ICommunicationObject)
Open(TimeSpan)

使通信对象在指定时间间隔内从已创建状态转换到已打开状态。

(继承自 ICommunicationObject)
Receive()

如果有可用消息,则返回接收到的消息。 如果没有可用消息,则在默认的时间间隔内阻塞。

(继承自 IInputChannel)
Receive(TimeSpan)

如果有可用消息,则返回接收到的消息。 如果没有可用消息,则在指定的时间间隔内阻塞。

(继承自 IInputChannel)
Send(Message)

向输出通道的目标传输一条消息。

(继承自 IOutputChannel)
Send(Message, TimeSpan)

在指定时间间隔内在当前输出通道上发送一条消息。

(继承自 IOutputChannel)
TryReceive(TimeSpan, Message)

尝试在指定的时间间隔内接收消息。

(继承自 IInputChannel)
WaitForMessage(TimeSpan)

返回一个值,该值指示消息是否在指定的时间间隔内到达。

(继承自 IInputChannel)

事件

Closed

当通信对象完成从正在关闭状态转换到已关闭状态时发生。

(继承自 ICommunicationObject)
Closing

当通信对象首次进入正在关闭状态时发生。

(继承自 ICommunicationObject)
Faulted

当通信对象首次进入出错状态时发生。

(继承自 ICommunicationObject)
Opened

当通信对象完成从正在打开状态转换到已打开状态时发生。

(继承自 ICommunicationObject)
Opening

当通信对象首次进入正在打开状态时发生。

(继承自 ICommunicationObject)

适用于