public void OnMessageCreateOrder(IMessage receivedMsg) { Exception exception = null; try { IObjectMessage message = receivedMsg as IObjectMessage; //Request Handle Ordenes request = message?.Body as Ordenes; //Save BD var response = _dbContext.Create(request); //Service SAP try { _serviceSap.CreateOrderSap(response); } catch (Exception) { } // Wait for the message Semaphore.WaitOne((int)ReceiveTimeout.TotalMilliseconds, true); Semaphore.Set(); Thread.Sleep((int)ReceiveTimeout.TotalMilliseconds); } catch (Exception ex) { exception = ex; } }