public Boolean sendDeclMessage(string messageId, string outId, int sendType, string messageDetail, int place) { if (messageId == null && messageId == "" && outId == null && outId == "" && messageDetail == null && messageDetail == "" && sendType == 0 && place == 0) { return false; } MessageQueueTransaction msgTransaction = new MessageQueueTransaction(); try { mq = mqFactory.CreateMsgQueueFactory(sendType, place); using (TransactionScope scope = new TransactionScope()) { msgTransaction.Begin(); XmlDocument xmldoc = new XmlDocument(); if (place == (int)SendPlace.GOVERNMENT) { String key = configUtil.getGovPwd(); messageDetail = AESUtil.AesEncoding(messageDetail, key, Encoding.UTF8); mq.SendEncryptMessage(messageDetail, msgTransaction, messageId); } else { xmldoc.LoadXml(messageDetail); mq.SendMessage(xmldoc, msgTransaction, messageId); } Logger.Debug(messageDetail); messageDeclService.createDeclMessage(messageId, outId, sendType, messageDetail,place); messageRespService.createResponseMessage(messageId, outId, sendType,place); scope.Complete(); msgTransaction.Commit(); return true; } } catch (Exception e) { msgTransaction.Abort(); if ((int)CustomsDeclarationProxy.Constant.CustomsMessageType.MANIFEST== sendType) { Logger.Error("shipmentPackId:" + outId + "send and insert manifest message failed!", e); } else if ((int)CustomsDeclarationProxy.Constant.CustomsMessageType.ORDER == sendType) { Logger.Error("shipmentPackId:" + outId + "send and insert order message failed!", e); } return false; } }