다음을 통해 공유


IInputChannel 인터페이스

정의

메시지를 수신하기 위해 채널이 구현해야 하는 인터페이스를 정의합니다.

public interface class IInputChannel : System::ServiceModel::Channels::IChannel
public interface IInputChannel : System.ServiceModel.Channels.IChannel
type IInputChannel = interface
    interface IChannel
    interface ICommunicationObject
Public Interface IInputChannel
Implements IChannel
파생
구현

설명

중요

신뢰할 수 없는 데이터로 이 인터페이스를 구현하는 클래스에서 메서드를 호출하는 것은 보안상 위험합니다. 신뢰할 수 있는 데이터로만 이 인터페이스를 구현하는 클래스에서 메서드를 호출하세요. 자세한 내용은 모든 입력 유효성 검사를 참조하세요.

계약에는 IInputChannel 수신, 수신 시도 및 메시지 대기 기능의 동기 및 비동기 변형이 포함됩니다.

끌어오기 모델은 일반적으로 와 함께 IInputChannel 메시지를 수신하는 데 사용됩니다. 를 호출 Receive 하여 (채널에서 메시지를 "끌어오기") 메시지가 도착할 때까지 기다립니다. 대체 사용 패턴은 또는 BeginWaitForMessage(TimeSpan, AsyncCallback, Object)를 호출 BeginWaitForMessage(TimeSpan, AsyncCallback, Object) 한 다음 을 호출Receive(TimeSpan)하는 것입니다. 이 방법은 및 Receive에 대한 호출 WaitForMessage(TimeSpan) 간의 트랜잭션을 시작하는 트랜잭션 사용에 일반적입니다.

IInputChannel이 반드시 단일 발신자에 바인딩될 필요는 없습니다. 다른 채널 및 채널 인터페이스는 특정 보낸 사람 및 IInputChannel사이의 상관 관계를 제공할 수 있지만 기본 계약은 이러한 제한을 하지 않습니다. 구현은 각 메시지에 대해 새 IInputChannel 를 만들거나 여러 메시지 및 보낸 사람에게 동일하게 IInputChannel 다시 사용할 수 있습니다.

속성

LocalAddress

입력 채널이 메시지를 수신하는 주소를 가져옵니다.

State

통신 지향 개체의 현재 상태를 가져옵니다.

(다음에서 상속됨 ICommunicationObject)

메서드

Abort()

통신 개체가 현재 상태에서 Closed 상태로 즉시 전환되도록 합니다.

(다음에서 상속됨 ICommunicationObject)
BeginClose(AsyncCallback, Object)

통신 개체를 닫기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 ICommunicationObject)
BeginClose(TimeSpan, AsyncCallback, Object)

지정된 제한 시간 내에서 통신 개체를 닫기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 ICommunicationObject)
BeginOpen(AsyncCallback, Object)

통신 개체를 열기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 ICommunicationObject)
BeginOpen(TimeSpan, AsyncCallback, Object)

지정된 시간 간격 내에서 통신 개체를 열기 위한 비동기 작업을 시작합니다.

(다음에서 상속됨 ICommunicationObject)
BeginReceive(AsyncCallback, Object)

연결된 상태 개체가 있는 메시지를 수신하기 위해 비동기 작업을 시작합니다.

BeginReceive(TimeSpan, AsyncCallback, Object)

지정된 시간 제한이 있는 메시지와 그에 연결된 상태 개체를 수신하기 위해 비동기 작업을 시작합니다.

BeginTryReceive(TimeSpan, AsyncCallback, Object)

지정된 시간 제한이 있는 메시지와 그에 연결된 상태 개체를 수신하기 위해 비동기 작업을 시작합니다.

BeginWaitForMessage(TimeSpan, AsyncCallback, Object)

지정된 시간 제한 및 연결된 상태 개체가 있는 비동기 메시지 도착 대기 작업을 시작합니다.

Close()

통신 개체가 현재 상태에서 Closed 상태로 전환되도록 합니다.

(다음에서 상속됨 ICommunicationObject)
Close(TimeSpan)

통신 개체가 현재 상태에서 Closed 상태로 전환되도록 합니다.

(다음에서 상속됨 ICommunicationObject)
EndClose(IAsyncResult)

통신 개체를 닫기 위한 비동기 작업을 완료합니다.

(다음에서 상속됨 ICommunicationObject)
EndOpen(IAsyncResult)

통신 개체를 열기 위한 비동기 작업을 완료합니다.

(다음에서 상속됨 ICommunicationObject)
EndReceive(IAsyncResult)

메시지를 수신하는 비동기 작업을 완료합니다.

EndTryReceive(IAsyncResult, Message)

메시지를 수신하는 지정된 비동기 작업을 완료합니다.

EndWaitForMessage(IAsyncResult)

지정된 비동기 메시지 대기 작업을 완료합니다.

GetProperty<T>()

요청한 형식화된 개체가 있는 경우 채널 스택의 해당 계층에서 반환합니다.

(다음에서 상속됨 IChannel)
Open()

통신 개체가 Created 상태에서 Opened 상태로 전환되도록 합니다.

(다음에서 상속됨 ICommunicationObject)
Open(TimeSpan)

통신 개체가 지정된 시간 간격 내에 Created 상태에서 Opened 상태로 전환되도록 합니다.

(다음에서 상속됨 ICommunicationObject)
Receive()

메시지가 사용 가능한 경우 수신된 메시지를 반환합니다. 메시지를 사용할 수 없는 경우 기본 시간 간격 동안 차단합니다.

Receive(TimeSpan)

메시지가 사용 가능한 경우 수신된 메시지를 반환합니다. 메시지를 사용할 수 없는 경우 지정된 시간 간격 동안 차단합니다.

TryReceive(TimeSpan, Message)

지정된 시간 간격 내에 메시지를 수신하려고 시도합니다.

WaitForMessage(TimeSpan)

지정된 시간 간격 내에 메시지가 도착했는지 여부를 나타내는 값을 반환합니다.

이벤트

Closed

통신 개체가 Closing 상태에서 Closed 상태로 전환을 완료할 때 발생합니다.

(다음에서 상속됨 ICommunicationObject)
Closing

통신 개체가 처음 Closing 상태가 될 때 발생합니다.

(다음에서 상속됨 ICommunicationObject)
Faulted

통신 개체가 처음 Faulted 상태가 될 때 발생합니다.

(다음에서 상속됨 ICommunicationObject)
Opened

통신 개체가 Opening 상태에서 Opened 상태로 전환을 완료할 때 발생합니다.

(다음에서 상속됨 ICommunicationObject)
Opening

통신 개체가 처음 Opening 상태가 될 때 발생합니다.

(다음에서 상속됨 ICommunicationObject)

적용 대상