public int AddNewCurrency(Currency pNewCurrency) { using (SqlConnection conn = _currencyManager.GetConnection()) { int cId = 0; if (_currencyManager.IsThisCurrencyAlreadyExist(pNewCurrency.Code, pNewCurrency.Name)) { throw new OpenCbsAccountException(OpenCbsAccountExceptionsEnum.CurrencyAlreadyExists); } SqlTransaction sqlTransac = conn.BeginTransaction(); if (_currencyManager.SelectAllCurrencies(sqlTransac).Count > 1) { throw new OpenCbsAccountException(OpenCbsAccountExceptionsEnum.MaximumCurrencyLimitReached); } try { cId = _currencyManager.Add(pNewCurrency, sqlTransac); sqlTransac.Commit(); } catch (Exception) { sqlTransac.Rollback(); throw; } return(cId); } }
public void Add_Currency() { CurrencyManager currencyManager = (CurrencyManager)container["CurrencyManager"]; using (SqlConnection conn = currencyManager.GetConnection()) { Currency currency = new Currency { Code = "US Dollar", IsPivot = false, Name = "USD" }; SqlTransaction t = conn.BeginTransaction(); currency.Id = currencyManager.Add(currency, t); Assert.AreNotEqual(0, currency.Id); } }