public static Account ReadAccountFromFile(string username, long accountNumber)
        {
            initializeCache();
            Account account  = null;
            string  filename = ConfigurationManager.AppSettings["localCacheDirectory"] + username + "-" + accountNumber.ToString() + ".txt";

            if (File.Exists(filename))
            {
                string[] lineArray;
                string   line;

                using (StreamReader sr = new StreamReader(filename))
                {
                    lineArray = sr.ReadLine().Split("|".ToCharArray());
                    account   = new Account(lineArray[3], lineArray[4], lineArray[2], lineArray[1], Convert.ToInt64(lineArray[0]));
                    double currentBalance         = Convert.ToDouble(lineArray[5]);
                    List <BankTransaction> btList = new List <BankTransaction>();
                    BankTransaction        bt     = null;
                    while ((line = sr.ReadLine()) != null)
                    {
                        lineArray = line.Split("|".ToCharArray());
                        bt        = new BankTransaction(Convert.ToInt32(lineArray[0]) == 0 ? BankTransaction.BankTransactionTypeEnum.Deposit : BankTransaction.BankTransactionTypeEnum.Withdrawal, Convert.ToDouble(lineArray[1]), Convert.ToDouble(lineArray[2]));
                        btList.Add(bt);
                    }
                    account.Balance            = currentBalance;
                    account.TransactionHistory = btList;
                }
            }
            AddOrUpdateAccount(account);
            return(account);
        }
Esempio n. 2
0
        public double Deposit(double amount)
        {
            BankTransaction tran = new BankTransaction(BankTransaction.BankTransactionTypeEnum.Deposit, amount, Balance);

            TransactionHistory.Add(tran);
            Balance = tran.NewBalance;
            Save();
            return(tran.NewBalance);
        }
Esempio n. 3
0
        public double Withdrawal(double amount)
        {
            BankTransaction tran = new BankTransaction(BankTransaction.BankTransactionTypeEnum.Withdrawal, amount, Balance);

            TransactionHistory.Add(tran);
            Balance = tran.NewBalance;
            Save();
            return(tran.NewBalance);
        }