System.ServiceModel.Channels.LayeredInputChannel class LayeredInputChannel : LayeredChannel<IInputChannel>, IAsyncInputChannel, IInputChannel, IChannel, ICommunicationObject, IAsyncCommunicationObject Documentation Code public virtual EndpointAddress LocalAddress { get; } public LayeredInputChannel(ChannelManagerBase channelManager, IInputChannel innerChannel) public IAsyncResult BeginReceive(AsyncCallback callback, object state) public IAsyncResult BeginReceive(TimeSpan timeout, AsyncCallback callback, object state) public IAsyncResult BeginTryReceive(TimeSpan timeout, AsyncCallback callback, object state) public IAsyncResult BeginWaitForMessage(TimeSpan timeout, AsyncCallback callback, object state) public Message EndReceive(IAsyncResult result) public bool EndTryReceive(IAsyncResult result, out Message message) public bool EndWaitForMessage(IAsyncResult result) protected virtual Task OnReceiveAsync(Message message) public Message Receive() public Message Receive(TimeSpan timeout) public Task<Message> ReceiveAsync(TimeSpan timeout) public Task<Message> ReceiveAsync() public bool TryReceive(TimeSpan timeout, out Message message) public Task<ValueTuple<bool, Message>> TryReceiveAsync(TimeSpan timeout) public bool WaitForMessage(TimeSpan timeout) public Task<bool> WaitForMessageAsync(TimeSpan timeout)