IInputChannel Interface

 

Defines the interface that a channel must implement to receive a message.

Namespace:   System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public interface class IInputChannel : IChannel, ICommunicationObject

NameDescription
System_CAPS_pubpropertyLocalAddress

Gets the address on which the input channel receives messages.

System_CAPS_pubpropertyState

Gets the current state of the communication-oriented object.(Inherited from ICommunicationObject.)

NameDescription
System_CAPS_pubmethodAbort()

Causes a communication object to transition immediately from its current state into the closed state. (Inherited from ICommunicationObject.)

System_CAPS_pubmethodBeginClose(AsyncCallback^, Object^)

Begins an asynchronous operation to close a communication object.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodBeginClose(TimeSpan, AsyncCallback^, Object^)

Begins an asynchronous operation to close a communication object with a specified timeout.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodBeginOpen(AsyncCallback^, Object^)

Begins an asynchronous operation to open a communication object.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodBeginOpen(TimeSpan, AsyncCallback^, Object^)

Begins an asynchronous operation to open a communication object within a specified interval of time.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodBeginReceive(AsyncCallback^, Object^)

Begins an asynchronous operation to receive a message that has a state object associated with it.

System_CAPS_pubmethodBeginReceive(TimeSpan, AsyncCallback^, Object^)

Begins an asynchronous operation to receive a message that has a specified time out and state object associated with it.

System_CAPS_pubmethodBeginTryReceive(TimeSpan, AsyncCallback^, Object^)

Begins an asynchronous operation to receive a message that has a specified time out and state object associated with it.

System_CAPS_pubmethodBeginWaitForMessage(TimeSpan, AsyncCallback^, Object^)

Begins an asynchronous wait-for-a-message-to-arrive operation that has a specified time out and state object associated with it.

System_CAPS_pubmethodClose()

Causes a communication object to transition from its current state into the closed state. (Inherited from ICommunicationObject.)

System_CAPS_pubmethodClose(TimeSpan)

Causes a communication object to transition from its current state into the closed state. (Inherited from ICommunicationObject.)

System_CAPS_pubmethodEndClose(IAsyncResult^)

Completes an asynchronous operation to close a communication object.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodEndOpen(IAsyncResult^)

Completes an asynchronous operation to open a communication object.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodEndReceive(IAsyncResult^)

Completes an asynchronous operation to receive a message.

System_CAPS_pubmethodEndTryReceive(IAsyncResult^, Message^%)

Completes the specified asynchronous operation to receive a message.

System_CAPS_pubmethodEndWaitForMessage(IAsyncResult^)

Completes the specified asynchronous wait-for-a-message operation.

System_CAPS_pubmethodGetProperty<T>()

Returns a typed object requested, if present, from the appropriate layer in the channel stack.(Inherited from IChannel.)

System_CAPS_pubmethodOpen()

Causes a communication object to transition from the created state into the opened state. (Inherited from ICommunicationObject.)

System_CAPS_pubmethodOpen(TimeSpan)

Causes a communication object to transition from the created state into the opened state within a specified interval of time.(Inherited from ICommunicationObject.)

System_CAPS_pubmethodReceive()

Returns the message received, if one is available. If a message is not available, blocks for a default interval of time.

System_CAPS_pubmethodReceive(TimeSpan)

Returns the message received, if one is available. If a message is not available, blocks for a specified interval of time.

System_CAPS_pubmethodTryReceive(TimeSpan, Message^%)

Tries to receive a message within a specified interval of time.

System_CAPS_pubmethodWaitForMessage(TimeSpan)

Returns a value that indicates whether a message has arrived within a specified interval of time.

NameDescription
System_CAPS_pubeventClosed

Occurs when the communication object completes its transition from the closing state into the closed state.(Inherited from ICommunicationObject.)

System_CAPS_pubeventClosing

Occurs when the communication object first enters the closing state.(Inherited from ICommunicationObject.)

System_CAPS_pubeventFaulted

Occurs when the communication object first enters the faulted state.(Inherited from ICommunicationObject.)

System_CAPS_pubeventOpened

Occurs when the communication object completes its transition from the opening state into the opened state.(Inherited from ICommunicationObject.)

System_CAPS_pubeventOpening

Occurs when the communication object first enters the opening state.(Inherited from ICommunicationObject.)

The IInputChannel contract includes synchronous and asynchronous variants of receive, try-to-receive and wait-for-a-message functionality.

The pull model is used typically with an IInputChannel to receive messages: you call Receive (to "pull" a message out of the channel) and then wait for a message to arrive. An alternative usage pattern is to call BeginWaitForMessage(TimeSpan, AsyncCallback^, Object^) or BeginWaitForMessage(TimeSpan, AsyncCallback^, Object^), and then call Receive(TimeSpan). This approach is common for transactional usages where you start the transaction between the calls to WaitForMessage(TimeSpan) and Receive.

An IInputChannel is not necessarily bound to a single sender. Other channels and channel interfaces can provide a correlation between particular senders and an IInputChannel, but the base contract makes no such restriction. An implementation can create a new IInputChannel for each message or reuse the same IInputChannel for multiple messages and senders.

Universal Windows Platform
Available since 8
.NET Framework
Available since 3.0
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show: