예제 #1
0
        public Boolean Storten(Decimal teStorten, String rekeningNr)
        {
            var dbManager = new BankDbManager();

            using (var conBank = dbManager.GetConnection())
            {
                using (var comStorten = conBank.CreateCommand())
                {
                    comStorten.CommandType = CommandType.StoredProcedure;
                    comStorten.CommandText = "Storten";

                    DbParameter parTeStorten = comStorten.CreateParameter();
                    parTeStorten.ParameterName = "@teStorten";
                    parTeStorten.Value         = teStorten;
                    parTeStorten.DbType        = DbType.Currency;
                    comStorten.Parameters.Add(parTeStorten);

                    DbParameter parRekeningNr = comStorten.CreateParameter();
                    parRekeningNr.ParameterName = "@rekeningNr";
                    parRekeningNr.Value         = rekeningNr;
                    comStorten.Parameters.Add(parRekeningNr);

                    conBank.Open();
                    return(comStorten.ExecuteNonQuery() != 0);
                }
            }
        }
예제 #2
0
        }             //overschrijven

        public Decimal SaldoRekeningRaadplegen(String rekeningNr)
        {
            var dbManager = new BankDbManager();

            using (var conBank = dbManager.GetConnection())
            {
                using (var comSaldo = conBank.CreateCommand())
                {
                    comSaldo.CommandType = CommandType.StoredProcedure;
                    comSaldo.CommandText = "SaldoRekeningRaadplegen";
                    var parRekNr = comSaldo.CreateParameter();
                    parRekNr.ParameterName = "@rekeningNr";
                    parRekNr.Value         = rekeningNr;
                    comSaldo.Parameters.Add(parRekNr);
                    conBank.Open();
                    Object resultaat = comSaldo.ExecuteScalar();
                    if (resultaat == null)
                    {
                        throw new Exception("Rekening bestaat niet");
                    }
                    else
                    {
                        return((Decimal)resultaat);
                    }
                }
            }
        }
예제 #3
0
        public void Overschrijven(Decimal bedrag, String vanRekening, String naarRekening)
        {
            var dbManager  = new BankDbManager();
            var dbManager2 = new Bank2DbManager();

            var opties = new TransactionOptions();

            opties.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
            using (var traOverschrijven = new TransactionScope(TransactionScopeOption.Required, opties))
            {
                using (var conBank = dbManager.GetConnection())
                {
                    using (var comAftrekken = conBank.CreateCommand())
                    {
                        comAftrekken.CommandType = CommandType.Text;
                        comAftrekken.CommandText = "update Rekeningen set Saldo=Saldo-@bedrag where RekeningNr=@reknr";

                        var parBedrag = comAftrekken.CreateParameter();
                        parBedrag.ParameterName = "@bedrag";
                        parBedrag.Value         = bedrag;
                        comAftrekken.Parameters.Add(parBedrag);

                        var parRekeningnNr = comAftrekken.CreateParameter();
                        parRekeningnNr.ParameterName = "@reknr";
                        parRekeningnNr.Value         = vanRekening;
                        comAftrekken.Parameters.Add(parRekeningnNr);

                        conBank.Open();
                        if (comAftrekken.ExecuteNonQuery() == 0)
                        {
                            throw new Exception("Van rekening bestaat niet");
                        }
                    } //aftrekken afsluiten
                }     //conbank
                using (var conBank = dbManager2.GetConnection()) {
                    using (var comBijtellen = conBank.CreateCommand())
                    {
                        comBijtellen.CommandType = CommandType.Text;
                        comBijtellen.CommandText = "update Rekeningen set Saldo=Saldo+@bedrag where RekeningNr=@reknr";

                        var parBedrag = comBijtellen.CreateParameter();
                        parBedrag.ParameterName = "@bedrag";
                        parBedrag.Value         = bedrag;
                        comBijtellen.Parameters.Add(parBedrag);

                        var parRekeningNr = comBijtellen.CreateParameter();
                        parRekeningNr.ParameterName = "@reknr";
                        parRekeningNr.Value         = naarRekening;
                        comBijtellen.Parameters.Add(parRekeningNr);

                        conBank.Open();
                        if (comBijtellen.ExecuteNonQuery() == 0)
                        {
                            throw new Exception("Naar rekening bestaat niet");
                        }
                    } //using comBijtellen
                }     //conbank
            }         //traoverschrijven
        }             //overschrijven
예제 #4
0
        public Int32 SaldoBonus()
        {
            var dbManager = new BankDbManager();

            using (var conBank = dbManager.GetConnection())
            {
                using (var comBonus = conBank.CreateCommand())
                {
                    comBonus.CommandType = CommandType.Text;
                    comBonus.CommandText = "update Rekeningen set Saldo=Saldo*1.1";
                    conBank.Open();
                    return(comBonus.ExecuteNonQuery());
                }
            }
        }
예제 #5
0
        public RekeningInfo RekeningInfoRaadplegen(String rekeningNr)
        {
            var dbManager = new BankDbManager();

            using (var conBank = dbManager.GetConnection())
            {
                using (var comSaldo = conBank.CreateCommand())
                {
                    comSaldo.CommandType = CommandType.StoredProcedure;
                    comSaldo.CommandText = "RekeningInfoRaadplegen";

                    var parRekNr = comSaldo.CreateParameter();
                    parRekNr.ParameterName = "@rekeningNr";
                    parRekNr.Value         = rekeningNr;
                    comSaldo.Parameters.Add(parRekNr);

                    var parSaldo = comSaldo.CreateParameter();
                    parSaldo.ParameterName = "@Saldo";
                    parSaldo.DbType        = DbType.Currency;
                    parSaldo.Direction     = ParameterDirection.Output;
                    comSaldo.Parameters.Add(parSaldo);

                    var parKlantNaam = comSaldo.CreateParameter();
                    parKlantNaam.ParameterName = "@Klantnaam";
                    parKlantNaam.DbType        = DbType.String;
                    parKlantNaam.Size          = 50;
                    parKlantNaam.Direction     = ParameterDirection.Output;
                    comSaldo.Parameters.Add(parKlantNaam);

                    conBank.Open();
                    comSaldo.ExecuteNonQuery();
                    if (parSaldo.Value.Equals(DBNull.Value))
                    {
                        throw new Exception("Rekening bestaat niet");
                    }
                    else
                    {
                        return(new RekeningInfo((Decimal)parSaldo.Value, (String)parKlantNaam.Value));
                    }
                }
            }
        }
예제 #6
0
        public Int64 NieuweKlant(String naam)
        {
            var manager = new BankDbManager();

            using (var conBank = manager.GetConnection())
            {
                using (var comToevoegen = conBank.CreateCommand())
                {
                    comToevoegen.CommandType = CommandType.StoredProcedure;
                    comToevoegen.CommandText = "NieuweKlant";

                    var parNaam = comToevoegen.CreateParameter();
                    parNaam.ParameterName = "@Naam";
                    parNaam.Value         = naam;
                    comToevoegen.Parameters.Add(parNaam);

                    conBank.Open();
                    Int64 klantNr = Convert.ToInt64(comToevoegen.ExecuteScalar());
                    return(klantNr);
                } //using comToevoegen
            }     //using conBank
        }