protected void btnSubmit_OnClick(object sender, EventArgs e) { using (var ctx = new ApplicationDbContext()) { var amount = decimal.Parse(txtAmount.Text.Trim()); var debitAccount = ctx.Accounts.Single(x => x.AccountName == txtDebitAccount.Text.Trim()); var creditAccount = ctx.Accounts.Single(x => x.AccountName == txtCreditAccount.Text.Trim()); var transaction = new Transaction() { Id = Guid.NewGuid(), Description = txtDescription.Text.Trim() }; var tranLegDebit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = debitAccount, TransactionLegType = TransactionLegType.Debit, Amount = amount }; var tranLegCredit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = creditAccount, TransactionLegType = TransactionLegType.Credit, Amount = amount }; try { ctx.TransactionLegs.Add(tranLegDebit); ctx.TransactionLegs.Add(tranLegCredit); ctx.Transactions.Add(transaction); ctx.SaveChanges(); lblMessage.Text = "Transaction added successfully"; Clear(); } catch (Exception ex) { lblMessage.Text = ex.Message; } } }
protected void btnSubmit_OnClick(object sender, CommandEventArgs e) { if (e.CommandName == "SubmitExpensesTransaction") { using (var ctx = new ApplicationDbContext()) { var amount = decimal.Parse(txtAmountExpenses.Text.Trim()); var debitAccount = ctx.Accounts.Single(x => x.AccountName == ddlDebitAccountExpenses.SelectedValue); var creditAccount = ctx.Accounts.Single(x => x.AccountName == ddlCreditAccountExpenses.SelectedValue); var transaction = new Transaction() { Id = Guid.NewGuid(), Description = txtDescriptionExpenses.Text.Trim(), Timestamp = DateTime.ParseExact(txtTransactionDateExpenses.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; var tranLegDebit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = debitAccount, TransactionLegType = TransactionLegType.Debit, Amount = amount, Timestamp = DateTime.ParseExact(txtTransactionDateExpenses.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; var tranLegCredit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = creditAccount, TransactionLegType = TransactionLegType.Credit, Amount = amount, Timestamp = DateTime.ParseExact(txtTransactionDateExpenses.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; try { ctx.TransactionLegs.Add(tranLegDebit); ctx.TransactionLegs.Add(tranLegCredit); ctx.Transactions.Add(transaction); ctx.SaveChanges(); lblMessageExpenses.Text = "Transaction added successfully"; ClearExpenses(); LoadInformation(); } catch (Exception ex) { lblMessageExpenses.Text = ex.Message; } } } else if (e.CommandName == "SubmitOtherTransaction") { using (var ctx = new ApplicationDbContext()) { var amount = decimal.Parse(txtAmount.Text.Trim()); var debitAccount = ctx.Accounts.Single(x => x.AccountName == ddlDebitAccount.SelectedValue); var creditAccount = ctx.Accounts.Single(x => x.AccountName == ddlCreditAccount.SelectedValue); var transaction = new Transaction() { Id = Guid.NewGuid(), Description = txtDescription.Text.Trim(), Timestamp = DateTime.ParseExact(txtTransactionDate.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; var tranLegDebit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = debitAccount, TransactionLegType = TransactionLegType.Debit, Amount = amount, Timestamp = DateTime.ParseExact(txtTransactionDate.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; var tranLegCredit = new TransactionLeg() { Id = Guid.NewGuid(), Transaction = transaction, Account = creditAccount, TransactionLegType = TransactionLegType.Credit, Amount = amount, Timestamp = DateTime.ParseExact(txtTransactionDate.Text, "yyyy/MM/dd", CultureInfo.InvariantCulture) }; try { ctx.TransactionLegs.Add(tranLegDebit); ctx.TransactionLegs.Add(tranLegCredit); ctx.Transactions.Add(transaction); ctx.SaveChanges(); lblMessage.Text = "Transaction added successfully"; Clear(); LoadInformation(); } catch (Exception ex) { lblMessage.Text = ex.Message; } } } }