public IAsyncResult BeginSendRequest( ChannelSendRequestEventHandler handler, IServiceRequest request) { m_handler = handler; m_request = request; try { // queue request. m_channel.ScheduleOutgoingRequest(this); } catch (Exception e) { m_error = e; m_response = null; // operation completed. OperationCompleted(); } return this; }