public int Transaction_Create(DateTime TransactionInitiateDate, float Amount, int UserId, string RequestBody, out TransactionalInformation transaction) { transaction = new TransactionalInformation(); TransactionBusinessRule transactionBusinessRule = new TransactionBusinessRule(transactionDataService); int TransactionId = 0; try { transactionDataService.CreateSession(); transactionBusinessRule.ValidateTransaction_Create(TransactionInitiateDate, Amount, UserId, RequestBody); if (transactionBusinessRule.ValidationStatus == true) { //send this password on mail string Password = Utility.Utilities.RandomAlphaNumeric(6); TransactionId = transactionDataService.Transaction_Create(TransactionInitiateDate, Amount, UserId, RequestBody, out transaction); } else { transaction.ReturnStatus = transactionBusinessRule.ValidationStatus; transaction.ReturnMessage = transactionBusinessRule.ValidationMessage; transaction.ValidationErrors = transactionBusinessRule.ValidationErrors; } } catch (Exception ex) { transaction.ReturnMessage = new List <string>(); string errorMessage = ex.Message; transaction.ReturnStatus = false; transaction.ReturnMessage.Add(errorMessage); } finally { transactionDataService.CloseSession(); } return(TransactionId); }