<PackageReference Include="System.ServiceModel.Primitives" Version="6.0.0" />

System.ServiceModel.Channels.DuplexChannel

public virtual EndpointAddress LocalAddress { get; }

public abstract EndpointAddress RemoteAddress { get; }

public abstract Uri Via { get; }

protected DuplexChannel(ChannelManagerBase channelManager, EndpointAddress localAddress)

protected virtual void AddHeadersTo(Message message)

public IAsyncResult BeginReceive(AsyncCallback callback, object state)

public IAsyncResult BeginReceive(TimeSpan timeout, AsyncCallback callback, object state)

public IAsyncResult BeginSend(Message message, AsyncCallback callback, object state)

public IAsyncResult BeginSend(Message message, 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 void EndSend(IAsyncResult result)

public bool EndTryReceive(IAsyncResult result, out Message message)

public bool EndWaitForMessage(IAsyncResult result)

protected abstract Task OnSendAsync(Message message, TimeSpan timeout)

public Message Receive()

public Message Receive(TimeSpan timeout)

public Task<Message> ReceiveAsync(TimeSpan timeout)

public void Send(Message message)

public void Send(Message message, TimeSpan timeout)

public Task SendAsync(Message message)

public Task SendAsync(Message message, TimeSpan timeout)

public bool TryReceive(TimeSpan timeout, out Message message)

public bool WaitForMessage(TimeSpan timeout)

public Task<bool> WaitForMessageAsync(TimeSpan timeout)