public void Order_Ack_Decline(int OrderId, int StatusId, string DeclineRemark, string ShippingMethod, DateTime TissueBankSendByDate, int LastModifiedBy, int TransactionId, string AuthCode, string ResponseBody, string AuthTransactionId, int TransactionStatusId, int TissueBankId, out TransactionalInformation transaction) { transaction = new TransactionalInformation(); OrderBusinessRule orderBusinessRule = new OrderBusinessRule(orderDataService); try { orderDataService.CreateSession(); orderBusinessRule.ValidateOrder_Ack_Decline(OrderId, StatusId, DeclineRemark, ShippingMethod, TissueBankSendByDate, LastModifiedBy); if (orderBusinessRule.ValidationStatus == true) { orderDataService.Order_Ack_Decline(OrderId, StatusId, DeclineRemark, ShippingMethod, TissueBankSendByDate, LastModifiedBy, TransactionId, AuthCode, ResponseBody, AuthTransactionId, TransactionStatusId, TissueBankId, out transaction); } else { transaction.ReturnStatus = orderBusinessRule.ValidationStatus; transaction.ReturnMessage = orderBusinessRule.ValidationMessage; transaction.ValidationErrors = orderBusinessRule.ValidationErrors; } } catch (Exception ex) { transaction.ReturnMessage = new List <string>(); string errorMessage = ex.Message; transaction.ReturnStatus = false; transaction.ReturnMessage.Add(errorMessage); } finally { orderDataService.CloseSession(); } }