public ICollection <Model.Currency> GetCurrencies() { using (var dal = new DalWrapper()) { return(dal.Currencies.ToList()); } }
public void SaveError(Model.Custom.CustomErrorException exception) { using (var dal = new DalWrapper()) { var errorInfo = new Model.ErrorLog { ErrorMessage = exception.ExceptionInfo, DateCreated = DateTime.Now, UserName = exception.UserName, ComputerName = exception.ComputerName, ProgramName = exception.ProgramName }; dal.ErrorLogs.Add(errorInfo); dal.SaveChanges(); } }
public string SaveTransaction(string currencySymbol, string customerID, decimal amount) { string errorMessage = string.Empty; using (var dal = new DalWrapper()) { using (var dbTran = dal.Database.BeginTransaction()) { try { // Krok 1. Znalezc klienta, a jesli nie ma to go dodac // krok 2. znalezc walute, a jesli jej nie ma to albo blad albo ją dodac (raczej blad) // krok 3. Majac ID waluty i klienta zapisac do tabeli transakcje //MUSIMY UŻYĆ SINGLE OR DEFAULT var cust = dal.Customers.SingleOrDefault(c => c.CustomerID.ToString().Equals(customerID)); //W aplikacji desktopowej moznaby uzyc System.Diagnostic.Debug.Assert ale TU NIE!!! if (cust == null) { errorMessage = "Customer Name not found"; } else { //Szukamy waluty var currency = dal.Currencies.SingleOrDefault(c => c.Name == currencySymbol); if (currency == null) { errorMessage = "Currency not found"; } else//mamy wszystkie potrzebne dane { var tranRecord = new Model.Transaction { Amount = amount, CurrencyID = currency.CurrencyID, CustomerID = cust.CustomerID, Date = DateTime.Now, Code = Guid.NewGuid().ToString() }; dal.Transactions.Add(tranRecord); dal.SaveChanges(); dbTran.Commit(); } } }//try catch (Exception e) { //IsSuccess = fasle; dbTran.Rollback(); errorMessage = e.Message; } } //using } //1 using //Generalnie po tej stronie zapisujemy Log do bazy //dal.ErrorLogs.Add(errorInfo); //IsSuccess //Zapis do LOG //if (!string.IsNullOrEmpty(errorMessage)) //{ // throw new Exception(errorMessage); //} //return "0"; return(errorMessage); }